【发布时间】:2013-05-20 00:44:28
【问题描述】:
我想创建一个大文本字段供用户输入内容。我还希望它使用默认系统字体来匹配预期的外观。所以我尝试使用带有默认构造函数的 JEditorPane,它使用纯文本编码。
JEditorPane editorPane = new JEditorPane();
editorPane.setText(gettysburgAddress);
这样做的问题是纯文本编码不会在每个单词的末尾换行,只有在字符用完时才会换行。
我尝试使用 HTML 编码,它会自动换行:
JEditorPane editorPane = new JEditorPane("text/html", "");
editorPane.setText(gettysburgAddress);
这有自动换行,但它默认为与系统默认字体不同的字体(Mac OS X 上的 Helvetica,我不想要。
如何才能两全其美:自动换行和系统默认字体?我不需要任何特殊的格式或任何东西,所以如果可能的话,纯文本编码会做。
【问题讨论】:
-
JTextArea 和 JTextPane 自动换行。
-
@camickr,这可能会奏效。把它变成一个显示它的答案(也许还显示如何使用 JEditorPane 来完成),我会接受它。
-
使用
SimpleAttributeSet,代表example。 -
Turn it into an answer showing it- 什么?我不会为你编写代码。如果您自己尝试过,您现在应该有答案了。 -
@camickr,我想你会想要一个答案的声誉;这就是我所说的“把它变成一个显示它的答案”的意思。如果你不感兴趣,我可以自己写答案。
标签: java swing java-7 jeditorpane