2011-01-08 89 views
0

我有一個Image名爲worldImageToUse,我有一個Timer,它應該在每兩秒之間在兩幅圖像之間切換worldImageToUse。但它似乎並不奏效。請幫助?Java定時器不工作

public void startWorldImageFlash() { 
     worldImageFlashTimer = new Timer(); 
     TimerTask task = new TimerTask() { 
      @Override 
      public void run() { 
       if(worldImageToUse == worldImage) setWorldImageBW(); 
       if(worldImageToUse == worldImageBW) setWorldImageColor(); 
      } 
     }; 
     worldImageFlashTimer.scheduleAtFixedRate(task, 0, 1000); 
    } 


public void stopWorldImageFlash() { 
     worldImageFlashTimer.cancel(); 
     setWorldImageColor(); 
    } 

回答

2

檢查兩次,如果用「else if」更改第二個,那將解決問題。另外,您應該考慮在這種情況下進行調試:)

0

您是否在repaint()設置了圖像?

1

它看起來像你的代碼說,如果顏色設置爲黑色和白色。然後說如果黑色和白色設置爲彩色。你不是每次都會得到相同的圖像嗎?你的第二個如果需要成爲其他人。