如何清除 JTextArea?

2022-09-01 14:35:51

我正在尝试清除 JTextArea。

目前,我正在使用

jtextarea.setText(null);

如果我使用,有什么区别

jtextarea.setText("");

答案 1

没有区别。它们都具有删除旧文本的效果。从 java TextComponent 页面:

设置文本

  public void setText(String t)

  Sets the text of this TextComponent to the specified text. If the text is null
  or empty, has the effect of simply deleting the old text. When text has been
  inserted, the resulting caret location is determined by the implementation of
  the caret class.

  Note that text is not a bound property, so no PropertyChangeEvent is fired when
  it changes. To listen for changes to the text, use DocumentListener.

  Parameters:
      t - the new text to be set
  See Also:
      getText(int, int), DefaultCaret

答案 2

作者试图清除JTextArea,而不是添加空字符!

    JTextArea0.selectAll();
    JTextArea0.replaceSelection("");

这将选择整个文本区域,然后将其替换为空字符串,从而有效地清除JTextArea。

不知道这里的误解是什么,但我有同样的问题,这个答案为我解决了。


推荐