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

Java是否添加全局JTextPane样式/属性?,java,swing,styles,jtextpane,Java,Swing,Styles,Jtextpane,我想将全局属性集添加到我的JTextPane 我发现: SimpleAttributeSet style = new SimpleAttributeSet(); StyleConstants.setLeftIndent(style, 20); StyleConstants.setFirstLineIndent(style, -20); 从 我想知道如何设置“默认样式表”?(不使用HTML)。然后我试了一下: StyleContext style = new StyleContext(); St

我想将全局属性集添加到我的JTextPane

我发现:

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

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

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


我知道StyledDocument有特定的属性来设置前景颜色之类的东西,这就是为什么这可能不起作用的原因,但是有人能告诉我如何使用其他样式属性吗?例如左缩进和第一行缩进。

这不适合我,windows 7 jdk 1.6?此外,即使我在文档中添加了更多的文本,这种样式也适用吗?适用于各种版本的Windows和JDK。发布你的SSCCE,显示问题所在。因此,在添加文本后设置样式时,它不起作用。尽管它现在可以工作了,我在添加/插入任何文本之前都会坚持。如果我执行
doc.setParagraphAttributes(0,0,style,false),则发生事件。知道为什么即使我将长度设置为0,它也可以工作吗?如果我在附加文本后设置属性,它也可以工作,因为它将属性应用于所有文本。仍然没有看到SSCCE,因此我无法对您的问题发表评论。我很难找到一个简明的示例来说明问题(如果我制作一个非常简单的应用程序,它会起作用)(我正在开发)。但是与此同时,为什么
setParagraphAttributes(0,0…
起作用?(适用于“0”个字符)这不适用于我,windows 7 jdk 1.6?此外,即使我在文档中添加了更多的文本,这种样式也适用吗?适用于各种版本的Windows和JDK。发布你的SSCCE,显示问题所在。因此,在添加文本后设置样式时,它不起作用。尽管它现在可以工作了,我在添加/插入任何文本之前都会坚持。如果我执行
doc.setParagraphAttributes(0,0,style,false),则发生事件。知道为什么即使我将长度设置为0,它也可以工作吗?如果我在附加文本后设置属性,它也可以工作,因为它将属性应用于所有文本。仍然没有看到SSCCE,因此我无法对您的问题发表评论。我很难找到一个简明的示例来说明问题(如果我制作一个非常简单的应用程序,它会起作用)(我正在开发)。但是与此同时,为什么
setParagraphAttributes(0,0…
起作用?(适用于“0”字符)
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);