我有一個使用線程的Java程序。在我跑法,我有:用Java持續重繪
public void run() {
while(thread != null){
repaint();
System.out.println("hi");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
break;
}
}
}
public void paintComponent(Graphics g) {
// painting stuff
}
的問題是執行run方法,但paintComponent
部分不叫。如果這不是繼續重新繪製組件的正確方法,那麼我應該如何重新繪製它?
這是擴展'JComponent'類的代碼塊嗎? (因爲'paintComponent()'是一個'JComponent'方法)。 – cgull
請向我們展示體面格式化的真實代碼。您當前的代碼表明,paintComponent在* run()方法內,並且不能爲true。再次,編輯您的問題,儘可能清理您的代碼併發布有意義的代碼,您當前使用的代碼,並向我們提供有關您的問題的更多詳細信息。假設我們不知道任何關於未顯示的代碼,並且我們無法讀懂你的想法。 –
試試這個[示例](http://stackoverflow.com/a/10352884/1057230),希望這可能會有所幫助:-) –