При использовании метода JTextPane
insertIcon()
Javadoc сообщает "...This is represented in the associated document as an attribute of one character of content."
Как получить информацию о моих вставленных значках?Я пытался getCharacterAttributes()
, который только "Fetches the character attributes in effect at the current location of the caret, or null."
Существует ли метод, чтобы найти все атрибуты в выделенном тексте или по определенному индексу, а не только в текущемпозиция каретки?
Редактировать
Вот пример кода, который я собрал вместе, чтобы получить имя файла встроенного значка.
Element root = jTextPane.getDocument().getDefaultRootElement();
BranchElement current = (BranchElement) root.getElement(0);
if (current != null)
{
Enumeration children = current.children();
while (children.hasMoreElements())
{
Element child = (Element) children.nextElement();
if (child.getName().equals("icon"))
{
AttributeSet attrSet = child.getAttributes();
ImageIcon icon = (ImageIcon) StyleConstants.getIcon(attrSet);
System.err.println(icon.getDescription());
}
}
}