2013-04-04 32 views
0


我正在構建遊戲,並且正在嘗試創建「新遊戲」按鈕。
在遊戲中,我有線程延遲了計算機的移動,所以我可以通過使用thread.sleep一步一步地看到它。
我的問題是,我不能做一個新的遊戲,直到這個線程結束。
如果我手動停止它,我會得到InterruptedException。
我該怎麼做才能做到這一點?

線程停止後無法制作新遊戲

我的遊戲放置在放置在JFrame上的JPanel上。
我想,如果我處置JFrame並創建一個新的JFrame,它將銷燬JPanel及其所有內容並全新創建一個。但它也不起作用。

有什麼建議?
先進的感謝,
羅恩。

+0

__DO不叫'使用Thread.stop()'__它大量棄用,並可能導致不一致的對象。閱讀[這裏](http://docs.oracle.com/javase/1.4.2/docs/guide/misc/threadPrimitiveDeprecation.html)。 – Mordechai 2013-04-04 19:15:43

回答

0

對於停止線程,請參閱:如果停止一個線程,而它在睡覺https://stackoverflow.com/a/8581317/1178781

的InterruptedException異常被拋出。如果你不想處理這個異常,只需要在try ... catch中包裝睡眠調用(catch沒有做什麼)。

,請參閱Java API:http://docs.oracle.com/javase/6/docs/api/java/lang/Thread.html#sleep(long)

另見:How to programmatically close a JFrame

+0

嗯,你不能稱它沒有一個.. – Mordechai 2013-04-04 19:09:24

+0

他可以添加一個'throws'語句的方法,使它不必包圍在一個嘗試... catch – justderb 2013-04-04 19:10:21

+0

它被包裹,但它是好的我得到這個異常?
以後不會造成任何問題嗎? – Ron537 2013-04-04 19:10:57