web-dev-qa-db-ja.com

JtextAreaの最後に新しい行を追加します

テキスト領域があり、そこにいくつかのテキストがあり、再びいくつかの行を追加したい(最初の行+追加したい他の行)が機能しません。

今のやり方では、古いテキストが消去され、新しい行だけが表示されます。

24
Johanna

JTextArea.setText(String text)を使用する代わりに、 JTextArea.append(String text) を使用します。

指定されたテキストをドキュメントの最後に追加します。モデルがnullまたは文字列がnullまたは空の場合は何もしません。

これにより、JTextAreaの最後にテキストが追加されます。

別のオプションは、getText()を使用してJTextAreaからテキストを取得し、次に文字列を操作(文字列を追加、削除、または変更)してから、setText(String text)を使用してJTextAreaのテキストを新しい文字列に設定します。

50
jjnguy

JTextAreaappend(String)メソッドを使用してテキストを追加していますか?

JTextArea txtArea = new JTextArea("Hello, World\n", 20, 20);
txtArea.append("Goodbye Cruel World\n");
12
Adamski

新しい行を作成したり、TextAreaで折り返したい場合は、テキストの後に\ n(改行)を追加する必要があります。

TextArea t = new TextArea();
t.setText("insert text when you want a new line add \nThen more text....);
setBounds();
setFont();
add(t);

これは私がそれを行うことができた唯一の方法です。おそらくもっと簡単な方法があるかもしれませんが、私はまだそれを発見していません。

0
user2089755