我需要執行/顯示從Arraylist到JTextArea的一系列事件,但是,每個事件都會在不同的時間執行。以下是我的目標,一個簡單的例子:Java Swing併發顯示JTextArea
public void start(ActionEvent e)
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
jTextArea.append("Test" + "\n");
try
{
Thread.sleep(3000);
} catch (InterruptedException e1)
{
e1.printStackTrace();
}
jTextArea.append("Test1" + "\n");
}
});
}
所以現在,「測試」和整個執行完畢後的JTextArea「測試1」顯示。 如何使「測試」顯示,再3秒後,顯示「Test1的」
感謝ü所有提前
感謝這麼多。有效! – Jack 2010-12-15 18:35:31
根據我的經驗,即使JTextArea#append被列爲「線程安全」,因此可以從EDT調用,但實際上在很多情況下並非如此,並且此方法也應該在EDT上調用。 – 2010-12-15 18:49:06