Java添加全局JTextPane样式/属性?

时间:2013-05-05 21:11:11

标签: java swing styles jtextpane

我想将一个全局AttributeSet添加到我的JTextPane。

我发现了这个:

SimpleAttributeSet style = new SimpleAttributeSet();
StyleConstants.setLeftIndent(style, 20);
StyleConstants.setFirstLineIndent(style, -20);

来自http://java-sl.com/tip_hanging_first_line.html

我想知道如何设置“默认样式表”? (不使用HTML)。然后我尝试了这个:

StyleContext style = new StyleContext();
Style s = style.addStyle("test", null);
StyleConstants.setForeground(s, Color.BLUE);
StyledDocument d = (StyledDocument) console.getOutputField().getDocument();

从没有好运的http://www.java2s.com/Code/Java/Swing-JFC/JTextPaneStylesExample1.htm

我知道StyledDocument具有用于设置前景色等内容的特定属性 - 这就是为什么这可能不起作用 - 但是有人能指出我如何使用其他样式属性吗?如左缩进和第一行缩进。

1 个答案:

答案 0 :(得分:3)

JTextPane textPane = new JTextPane();
StyledDocument doc = textPane.getStyledDocument();
SimpleAttributeSet style = new SimpleAttributeSet();
StyleConstants.setLeftIndent(style, 20);
StyleConstants.setFirstLineIndent(style, -20);
StyleConstants.setForeground(style, Color.BLUE);
doc.setParagraphAttributes(0, doc.getLength(), style, true);