可能重複:
How I append text to textarea with using swingworker class?我怎樣才能看到每一行?
我附上我的JTextArea許多行for循環。當我添加行時,我沒有看到任何文本行,但是當for循環完成所有行顯示。我怎樣才能看到每一行每一行?
可能重複:
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