我正在做一個遊戲,當一艘船已經死亡時,我製作一個顯示GIF爆炸的線程。問題在於有時候爆炸並沒有消失,並且一直停留在屏幕上,直到遊戲結束。「守護線程圖像動畫師」未完成
調試,我看到「守護線程圖像Animator -0」運行,我猜測GIF。這是爆炸的代碼:
public void run(){
setIcon(new ImageIcon(getClass().getClassLoader().getResource("Imag/explosion.gif")));
Point pos = this.getLocation();
setBounds(pos.x,pos.y);
try{
Thread.sleep(500);
}
catch(Exception e){
e.printStackTrace();
}
juego.removeEntidad(this);
}
有時這個問題不會發生,我不知道如何解決它。
太難說了,如果有用戶Thread.sleep(int)與Swing一起使用(Oracle教程EventDispatchThread中的更多信息),以便更快地幫助SSCCE/MCVE,短小,可運行,編譯 – mKorbel 2014-11-22 15:37:26