【问题标题】:JTextArea setWrapStyleWord(true) does not work if appending text如果附加文本,JTextArea setWrapStyleWord(true) 不起作用
【发布时间】:2012-11-06 02:18:22
【问题描述】:

根据JTextArea documentation 的 Oracle,如果您希望换行 AND 在字边界而不是字符边界换行,您必须使用如下代码:

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

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

jtaOutputPrimes.append(",");

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

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

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

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

有人可以帮忙吗?谢谢!

【问题讨论】:

    标签: jtextarea word-boundaries


    【解决方案1】:

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

    jtaOutputPrimes.append(", ");

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-27
      • 1970-01-01
      • 2014-03-06
      • 1970-01-01
      • 2018-01-18
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      相关资源
      最近更新 更多