在JTextArea或JTextPane中设置样式文本

min*_*ino 14 html java swing jtextpane

基本上,我有一个JTextPane来保存一些我希望样式的文本.JTextArea对我来说会更好用但是我告诉你不能在这些文本中设置样式吗?

但是,JTextPane似乎没有正确的样式.例如,只返回包含HTML的以下代码:

public static void main(String[] args) {
    JFrame j = new JFrame("Hello!");
    j.setSize(200,200);
    JTextPane k = new JTextPane();
    k.setText("<html><strong>Hey!</strong></html>");
    j.add(k);
    j.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)

我希望能够在用户与界面交互时在JTextPane中设置一些文本的样式,但到目前为止,它只返回HTML仍在的字符串!救命!

mKo*_*bel 21

如果要HtmlJTextPane中绘制内容,则必须为JTextPane设置#setContentType ("text/html"); ,例如这里

编辑:

对于JEditorPanes / JTextPanes是否有通过工具的另一种方式StyledDocument中,MutableAttributeSet的和定制Highlighte R,例如这里

我的方式是没有使用 Html syntax


Ran*_*Rag 6

让Java知道它将是使用setContentType方法的HTML .

k.setContentType("text/html"); 
Run Code Online (Sandbox Code Playgroud)