如果要在FXML控制器中关闭应用程序(不是从Application派生的主类,而是从{{3}派生的FXML文件附加的控制器,是否有任何方法可以检查(并在其上附加事件处理程序) }})?
谢谢,非常感谢。
答案 0 :(得分:2)
此示例可帮助您获得所需的位置。
FXMLLoader loader = new FXMLLoader();
Parent node = loader.load(getClass().getResource("myfxml.fxml")).openStream());
Scene scene = new Scene(node);
Stage stage = new Stage();
MyController controller = (MyController)loader.getController();
stage.setTitle(titleString);
stage.setScene(scene);
stage.setOnHidden(event -> {
//do all your processing here
controller.doSaveHere();
});
stage.show();
但是你可以使用其他钩子 - setOnHiding()或setOnCloseRequest()