为Anchor窗格设置类控制器

Ram*_*ams 5 java javafx javafx-2 scenebuilder

使用JavaFX时,Scene Builder遇到以下问题......

鉴于:

一个文件fxml,包含描述Anchor Pane(由Scene Builder构成的fxml);
对于Anchor窗格未指定控制器类.
这个fxml使用FXMLLoader加载到Java应用程序中.

需要:

下载Anchor窗格后,将值设置为Controller Class.
有必要使用不同的处理程序加载相同的fxml.

问题:是否可能,如果是的话 - 如何实施?

Ulu*_*Biy 12

加载FXML文件的控制器类也可以通过Scene Builder设置.但是你想在应用程序的加载时设置它.要实现这一点,您应该在调用load()方法之前设置FXMLLoader的控制器:

AnchorPane rootPane;
MyController controller = new MyController();
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("my.fxml"));
fxmlLoader.setRoot(rootPane);
fxmlLoader.setController(controller);
fxmlLoader.load();
Run Code Online (Sandbox Code Playgroud)