从JTextPane中的任何偏移量获取样式

时间:2011-01-27 17:34:26

标签: java swing styling jtextpane

有没有办法获得Style,一个样式名称或甚至比较StyleJTextPane的某个位置是否与我在插入时给出文字的样式有关?因为我的目的,我创建了自定义JTextPaneStyledDocumentDocumentFilter。所以我可以选择Style用于说普通字母和另一种用于数字的样式。我还切换按钮,当切换设置DocumentFilter时,不同地格式化数字,而不是定期切换数字格式,所以最后根据JTextPane's getText()方法无法区分哪些数字受到影响。因此,唯一的方法是比较我将常规和特殊数字样式作为常量的样式。我唯一需要提出的是如何为每个角色获得Style。

我知道有JTextPane's方法从插入符号getCharacterAttributes()的位置获取AttributeSet,但我认为这对我的问题毫无用处。

是否需要包含代码示例?我不认为这很难想象。如果你想要我,我会把它包括在内。

任何输入都将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:9)

尝试调用StyledDocument.getCharacterElement(pos)获取该位置的字符元素,然后调用Element.getAttributes()以获取其属性集。

AttributeSet包含您可以使用StyleConstants提供的方法检索的样式。