3
我最近開始使用Java FX,FXML和場景構建器,並且我一直在嘗試將關鍵偵聽器添加到場景的其中一個控制器。當我這樣做時,關鍵聽衆不會按照他們的意圖工作,我認爲這是因爲他們沒有專注於特定的場景。我嘗試訪問控制器所屬的場景,以便直接設置它,但是它出現了它是空場景的一部分。JavaFX從控制器中獲取場景
有沒有一種方法可以訪問該控制器所用的場景,以嘗試將關鍵事件和偵聽器分配給該特定場景?我應該通過在整個應用程序中靜態的rootController嗎?或者,更好的是,有沒有更簡單的方法來解決這個問題?
我看到的大多數例子都假設一切都主要集中在一個主類中,或者在沒有引入FXML的情況下在其他類中分開,我不知道如何在擁有java控制器時應用修補程序, FXML頁面和主應用程序全部分開。
感謝您的幫助!
是啊!這給了我場景而不是null ^^。我試圖在init()方法中獲取它,所以一定是這個問題!謝謝!現在,我可以讓鍵盤工程師開始工作:D – Keanu 2014-09-26 13:56:23
如果您正試圖將'keylisteners'添加到場景中,我會建議在場景創建的地方進行。 *儘管我不確定你的要求* – ItachiUchiha 2014-09-26 13:58:51
我正在嘗試使用所有這些東西來製作遊戲,而現在我擁有它的方式有一個場景是根,我只是根據在哪裏切換舞臺用戶將在每次。當我改變舞臺時,我是否會將它添加到場景中,所以關鍵事件已經存在?我將如何從控制器外部訪問新控制器和舞臺中的元素?(例如,當在舞臺控制器中實例化圖像時,創建一個移動圖像的關鍵事件) – Keanu 2014-09-26 14:14:05