浏览 3289 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-10-09
for (int k = 0; k < hrefs.size() && k < 50; k++) { ...... ...... jTextArea1.append(hrefs.get(k).getUrl() + " Analysis Completed...\n"); } 其中jTextArea1为一个文本区域,hrefs 为一个链表LinkedList<Href>,(Href 为自己定义的一个类),但是当运行程序时,可以看到要等到当所有的循环都结束后,所有要显示的内容才一股脑都出现在jTextArea1中。 为了能够使jTextArea1 中的内容在每次循环中都能发生变化,有人提出用多线程的方法来解决,其实只要添加一个方法就可以了,paintImmediately()。对源程序修改如下: for (int k = 0; k < hrefs.size() && k < 50; k++) { ...... ...... jTextArea1.append(hrefs.get(k).getUrl() + " Analysis Completed...\n"); jTextArea1.paintImmediately(jTextArea1.getBounds()); } 如此,便可以实现我们想要的效果。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-03-25
最后修改:2011-03-25
wzhiju 写道 最近在写一个桌面程序时,涉及到要向JTextArea 中每次循环写入数据,开始程序如下:
for (int k = 0; k < hrefs.size() && k < 50; k++) { ...... ...... jTextArea1.append(hrefs.get(k).getUrl() + " Analysis Completed...\n"); } 其中jTextArea1为一个文本区域,hrefs 为一个链表LinkedList<Href>,(Href 为自己定义的一个类),但是当运行程序时,可以看到要等到当所有的循环都结束后,所有要显示的内容才一股脑都出现在jTextArea1中。 为了能够使jTextArea1 中的内容在每次循环中都能发生变化,有人提出用多线程的方法来解决,其实只要添加一个方法就可以了,paintImmediately()。对源程序修改如下: for (int k = 0; k < hrefs.size() && k < 50; k++) { ...... ...... jTextArea1.append(hrefs.get(k).getUrl() + " Analysis Completed...\n"); jTextArea1.paintImmediately(jTextArea1.getBounds()); } 如此,便可以实现我们想要的效果。 谢谢 |
|
返回顶楼 | |
发表时间:2011-03-26
我也遇到过这个问题,很好,对我有用。
|
|
返回顶楼 | |