我似乎無法讓這個定時器關閉。該程序編譯,並從我的理解,這應ping每隔1000毫秒或1秒,並執行actionPerformed {}函數中的行。java swing定時器不會關閉
public void stringGeneration(String args[]){
ActionListener taskPerformer = new ActionListener() {
public void actionPerformed(ActionEvent evt) {
String fullIstring = java.lang.String.valueOf(injectString[0] + injectString[1] + injectString[2] + injectString[3] + injectString[4]);
jLabel3.setText(fullIstring);
System.out.println("output");
}
};
Timer timer = new Timer(1000, taskPerformer);
timer.setRepeats(true);
timer.start();
//Thread.sleep(500);
}
代碼工作對我很好。張貼您的SSCCE(http://sscce.org)來證明問題。也許你的GUI不可見,所以程序在Timer觸發前終止。 – camickr 2011-05-04 21:07:20
我真的不明白如何使用這個SSCCE的東西..圖形用戶界面是可見的,所有其他功能,我一直工作得很好。我在整個文件的主類中都有stringGeneration函數。 – jake 2011-05-04 21:24:38
現在是瞭解SSCCE的好時機。我不關心你的「整個文件」。所有你需要做的就是創建一個顯示JFrame的類,然後啓動一個Timer。它的10行代碼。如果你在這種簡單的情況下無法使你的Timer工作,那麼你將無法使它在更復雜的程序中工作。努力發佈SSCCE。如果你正在調用這個方法,那麼定時器應該工作。問題在你的代碼中的其他地方。這就是爲什麼你創建SSCCE來證明你瞭解使用Timer的基本知識。 – camickr 2011-05-04 21:29:08