我正在编写一个程序,带有GUI,需要将多行输出到某种TextArea。我尝试用JTextArea
这样做,但事实证明,当将新文本设置为JTextArea时,旧文本将被删除。它是某种方式打印多行到JTextArea
?或者我应该使用一个完全不同的方法/组件来显示文本?
我希望这将澄清:
for (int n = 0; n <= this.length; n++) {
for (int m = 0; m <= that.length; m++) {
txtaResult.setText("thisthis is " + n + "n");
Random randomGenerator = new Random();
randomNumber = randomGenerator.nextInt(9)+1;
txtaResult.setText(thatthat, " + m + ", is " + randomNumbern");
}
}
(txtaResult
是JTextArea
)所以我想要两个txtaResult.setText
中的文本留在JTextArea
中,并在所有迭代中相互添加。
使用append
方法代替setText
。一切都像我期望的那样运行——如果setText
有附加,我会很惊讶。
如果您出于某种原因不想使用append
,您可以调用getText
并自己连接文本:
txtaResult.setText(textaResult.getText() + "whatever");
…但使用append
更干净,可能更有效。
<
而不是<=
),最好创建一个Random
的单个实例,并多次调用nextInt
。