调用JEditorPane时,文本/ HTML换行无法换行

时间:2014-11-07 17:48:57

标签: java html swing user-interface textwrapping

我使用JEditorPane显示一些包含HTML标记的文本

JEditorPane htmlTextPane = new JEditorPane();
htmlTextPane.setContentType("text/html");
htmlTextPane.setText("This text pane contains html. The custom HTMLEditorKit supports single letter wrapping."); 
final JScrollPane editorScrollPane = new JScrollPane(htmlTextPane);
editorScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
editorScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

当我启动应用程序时,text/html似乎正确包装,但是当我尝试在运行时设置JEditorPane的值时(例如,单击一个表行,得到{{} 1}} text)通过调用html,新文本无法换行,我看不到整个文本。

1 个答案:

答案 0 :(得分:0)

通常这应该有效,但对于某些特定的HTML代码段可能会失败。 在这种情况下,需要重写HtmlEditorKit.HTMLFactory。 您可以通过

设置增强的EditorKit
htmlTextPane.setEditorKit(anEnhancedHtmlEditorKit);

请提供失败的示例HTML。