1.布局
存放有JTextPane的JScrollPane容器放到BoderLayout类型的布局管理器的容器中时,会自动撑开,填满外层容器:
JPanel left_top_Pane = new JPanel(); left_top_Pane.setLayout(new BorderLayout()); JTextPane textPane = new JTextPane(); left_top_Pane.add(new JScrollPane(textPane), BorderLayout.CENTER);
2.插入图片
JTextPane提供insertIcon(Icon icon)方法,可直接调用,由于ImageIcon实现了Icon接口,可利用ImageIcon类来调用本地图片:
textPane.insertIcon(new ImageIcon("D:\\image.gif"));
3.插入样式文本
首先获取JTextPane的编辑器关联模型
public StyledDocument getStyledDocument()
再对实现了Document接口的类进行插入编辑,用到的类有如下说明:
首先是属性类:
写道
public interface AttributeSet()
唯一属性的集合。这是只读的、不可变的接口。属性基本上是键和与该键关联的值。该集合可能表示类似于 run 风格、逻辑风格等内容。这些内容通常用于描述某个图形表示形式(如字体)的功能。
唯一属性的集合。这是只读的、不可变的接口。属性基本上是键和与该键关联的值。该集合可能表示类似于 run 风格、逻辑风格等内容。这些内容通常用于描述某个图形表示形式(如字体)的功能。
MutableAttributeSet 实现了AttributeSet接口,可提供属性的存放。
其次是属性类的操作类:
写道
public class StyleConstants extends Object
一个已知的 或常见的属性键和方法的集合,可通过应用 AttributeSet 或 MutableAttributeSet 方法以类型安全的方式获取/设置属性。
段落属性定义了所呈现的段落。所有的大小都是以点的形式指定的(如 postscript 中所示),其测量与设备无关。
一个已知的 或常见的属性键和方法的集合,可通过应用 AttributeSet 或 MutableAttributeSet 方法以类型安全的方式获取/设置属性。
段落属性定义了所呈现的段落。所有的大小都是以点的形式指定的(如 postscript 中所示),其测量与设备无关。
它提供了多种设置/获取属性的方法,可用于属性的设置和获取。
那么,插入样式文本的方法如下:
Document doc = textPane.getStyledDocument(); MutableAttributeSet set = new MutableAttributeSet(); StyleConstants.setForeground(set, textColor);//设置文字颜色 StyleConstants.setFontSize(set, 12);//设置字体大小 try{ doc.insertString(doc.getLength(), text, set);//插入文字 }catch (BadLocationException e){ }
至此,完成了在TextPane中插入带样式的文本。