有沒有辦法強制JavaFX應用程序在繼續之前重新繪製自己?類似於Swing Panel的繪圖(Graphic g)方法(我可能會在這裏找到關鍵字錯誤)。在JavaFX中強制立即繪製
請考慮以下示例:您需要編寫一個TicTacToe應用程序以及計算機播放器所需的AI。你想要顯示兩個電腦玩家的能力。也許你會在電腦輪流之間停下兩秒鐘,讓它像生活一樣。當你點擊你的「Go」按鈕時,會出現很大的無反應停頓時間(用9秒的時間通過僞造的暫停讓計算機「決定」),然後突然應用程序的視覺更新爲已完成遊戲的狀態。
一旦在應用程序的線程中處理完成,JavaFX似乎就會重新繪製?我在這裏並不完全確定。
謝謝!
我相信Swing和JavaFX在GUI組件中有類似的線程模型, Swing的JPanel,JavaFx Button,只能從主線程中更新。在上面的示例中,您將創建獨立的線程來執行計算,即移動,然後調用Swing.invokeLater或Platform.runLater()以獲取主線程來更新GUI。雖然這聽起來很奇怪,但這樣做是爲了規避如果任何線程被允許更新GUI時會發生的問題。 – Kerry 2015-08-14 11:27:14