簡體   English   中英

JavaFX將FXML添加到普通的Java控制器中

[英]JavaFX adding FXML to and plain java controllers

我的第一篇文章,請保持溫柔。

我正在為一個簡單的游戲制作JavaFX GUI。 我在這里通過FXML文件加載器加載了FXML布局:

Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));

然后在Main.java中創建一個按鈕:

Button button = new Button("Jp", view);

並且為了顯示:

primaryStage.setScene(new Scene(root));
primaryStage.show();

問:到底我怎樣才能將FXML布局和純Java Button對象結合在同一場景上? 難道像蘋果和橘子一樣,不可能結合在一起嗎? 我的IDE不允許我調用從Java文檔推薦的方法:

root.getChildren().add();

等等...

請幫助我和/或為我指明方向,我確實嘗試過...

Parent定義getChildren()方法是一個protected方法:因此,您不能從Main類訪問它,這就是為什么您的代碼無法編譯的原因。

Pane重寫此方法並將其public ,因此,假設FXML文件的根元素是Pane (或Pane子類),則只需更詳細地說明根的類型。 換句話說,再次假設您的FXML符合我的預期,

Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));

Pane root = FXMLLoader.load(getClass().getResource("sample.fxml"));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM