我怎样才能看到每一行?
可能重复:
How I append text to textarea with using swingworker class?我怎样才能看到每一行?
我附上我的JTextArea许多行for循环。当我添加行时,我没有看到任何文本行,但是当for循环完成所有行显示。我怎样才能看到每一行每一行?
不要在Event Dispatching Thread中执行您的进程,它会阻止发生重绘更新。
你应该利用SwingWorker API的
而且,看看
让我猜猜你在做什么
while (doSomeWork) {
// do some processing
textArea.append(someText);
}
或者可能是for
循环
而你是,一些如何期待用户界面神奇地更新?
毫无疑问,尽管我很喜欢它的工作方式,但并不是那样工作。
为了让屏幕更新,您必须允许事件派发线程继续运行,因此它可以处理重新绘制请求(&一堆其他重要的事情),您需要将处理卸载到另一个线程。
没有,没有任何其他的办法了,&最简单的方法是使用的SwingWorker
我不知道,但在使用这个你的for循环: jTextArea.updateUI();
它不工作我试试吧 – 2012-08-15 08:41:08
尝试jframe.updateUI();或jpanel.updateUI();太。 – Amir 2012-08-15 08:45:21
不,它不工作太 – 2012-08-15 09:11:14
我不明白。举一些例子吗?这是更简单的方法吗? – 2012-08-15 08:08:30
阅读一些链接。如果你有一个特定的问题,要么搜索SO或发布一个新的问题 – MadProgrammer 2012-08-15 08:18:54
请给出一些代码示例。我想像你写的那样在循环中添加行。 – 2012-08-15 09:11:43