Java Swing JEditorPane: манипулирование стилизованными документами - PullRequest
2 голосов
/ 05 декабря 2009

У меня есть модель, представляющая собой очередь строк, связанных с типами перечислений.

Я пытаюсь отобразить эту модель в JEditorPane с каждым элементом в очереди в виде отдельного абзаца HTML, атрибуты которого основаны на связанном типе перечисления.

Однако мои методы обновления не делают то, что я хочу. Я попытался записать строки HTML непосредственно в документ (например, я беру строки, добавляю <p style="color:red"> и добавляю </p>, а затем вставляю их в конец документа), но это дает мне теги html в выводе ( вместо форматирования), что, конечно, не согласуется с результатом размещения тегов в строке, которую я использую, при создании документа с помощью JEditorPane ("text / html", String foo). Я также пытался вставить с помощью AttributeSet, но, видимо, я тоже делаю это неправильно.

Есть предложения?

1 Ответ

1 голос
/ 05 декабря 2009

Мне никогда не удавалось играть с HTML в JEditorPane. Я просто использую атрибуты в JTextPane. Что-то вроде:

SimpleAttributSet keyWord = new SimpleAttributeSet();
StyleConstants.setForeground(keyWord, Color.RED);
StyleConstants.setBackground(keyWord, Color.YELLOW);
StyleConstants.setBold(keyWord, true);

try
{
    doc.insertString(doc.getLength(), "\nSome more text", keyWord );
}
catch(Exception e) {}
...