2012-02-18 125 views
0

当我打印for语句时,它在控制台上打印了40次,但是当我尝试在textarea上显示该字符串时,它只给出了一次结果,请问为什么发生这种情况?为什么textarea正在创建这个问题?TextArea只显示一次结果

回答

2

您可能在for循环中调用了setText(String t)方法,因此每次执行循环时都会清理textArea的文本并填充新的字符串元素。所以最终,你会看到循环的最后一个字符串打印在textArea中。您可以使用下面的新字符串到以前的文本保持在追加的textarea的组件:

textarea.setText(textarea.getText() + " " + textToAppend); 
+0

是的,我只是写textarea.setText(R);我怎样写它,你告诉的方式。我写它像textarea.setText(textarea.gettext()+ r);正如你所建议的,但它什么都不显示 – Xara 2012-02-18 13:18:42

+0

嗯..这很奇怪。 'textarea.setText(textarea.gettext()+“”+ r);'在这种情况下应该为你工作。你确定'r'不是null或者代码中没有其他错误? 您也可以考虑使用[StringBuffers](http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/StringBuffer.html)将textArea的文本设置为一次在StringBuffer中。 – 2012-02-18 13:27:56

+0

感谢它的工作...我犯了一个愚蠢的错误,这就是为什么结果不来 – Xara 2012-02-18 13:45:34

1

控制台中的结果一次打印一个,但如果要将结果放入文本字​​段(多个结果),则应在每个循环的文本字段中包含的字符串附加“结果”字符串