为Anchor窗格设置类控制器

时间:2013-01-16 13:39:19

标签: java javafx-2 javafx scenebuilder

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

假设:

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

需要:

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

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

1 个答案:

答案 0 :(得分:12)

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

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