让我们说我有一个控制器Ctr和一个fxml文件file.fxml对应。
我想声明并实例化一个对象,我可以在屏幕上显示与该fxml和控制器相对应的对象
我有A类包含这个对象
问题是:
如果将此对象声明为Ctr(控制器),则它不再可显示,因为我无法将其作为子项添加到其他组件(例如stackpane)。
如果使用FXMLLoader,返回的加载类是未知的,我不能将其存储为Ctr对象。
答案 0 :(得分:0)
您无法知道FXMLLoader
的返回类肯定,但是因为您选择了fxml
文件,您必须在哪个类中投射controller
:
Stage primaryStage = new Stage();
FXMLLoader fx = new FXMLLoader(Paths.get("../specialView4X.fxml").toUri().toURL());
Scene scene = new Scene(fx.load());
primaryStage.setScene(scene);
primaryStage.show();
primaryStage.centerOnScreen();
SpecialView4XController control = (SpecialView4XController) fx.getController();
这是为了启动一个新窗口,重新使用现有窗口,在其上使用现有对象广告<{1}}