1

根据 Oracle 在JTextArea 文档中的说法,如果您希望换行并在字边界而不是字符边界处换行则必须使用如下代码:

jtaOutputPrimes.setLineWrap(true);
jtaOutputPrimes.setWrapStyleWord(true);

请注意 jtaOutputPrimes 是 myJTextArea上 my的名称JPanel
当我使用方法 append 将文本添加到 JTextArea 时,问题就出现了,如下所示:

jtaOutputPrimes.append(",");

在这种情况下,setWrapStyleWord设置不起作用。它继续使用字符边界而不是单词边界。

我发现另一个人在这里遇到同样的问题: setWrapStyleWord 问题

现在,假设您正在运行一个JApplet具有 this的JTextArea. 如果您在文本区域中键入,它会自动换行,但是从 append 方法传递的任何文本都不起作用。

我相信这是一个错误,我在任何地方都找不到 Oracle 承认它。

任何人都可以帮忙吗?谢谢!

4

1 回答 1

1

我发现了为什么会发生这种情况,这个简单的修复可能对其他人有益。这个问题开始起作用了,因为当我将逗号 (,) 附加到 JTextArea 时,它消除了单词之间的空白。为了解决这个问题,我只是像这样在逗号后放置了一个空格,它就起作用了。

jtaOutputPrimes.append(", ");

于 2012-11-06T02:36:26.493 回答