当包含连接到控制器的视图的级关闭时,是否有方法触发控制器中的功能?比方说,当窗口关闭时,我想在舞台中的每个控制器上调用“清理”功能(例如保存更改)。JavaFX:关闭对应级时控制器上的调用功能
0
A
回答
0
通常你把FXML文件的内容到一个阶段(通过场景)内外兼修的FXML和控制器。所以你应该在你实际访问舞台的地方添加代码来做到这一点。您可以在控制器类中定义的方法来调用的时候,你需要做的“清理”:
public class Controller {
// injected fields, etc...
public void initialize() {
// initialization code...
}
// event handlers, etc...
public void shutdown() {
// cleanup code here...
}
}
现在,当你加载FXML并显示其在一个窗口中的内容,你可以注册阶段的处理程序调用控制器的关机方法:
Stage stage = ... ;
FXMLLoader loader = new FXMLLoader(getClass().getResource("path/to/fxml/file"));
Parent root = loader.load();
Scene scene = new Scene(root);
stage.setScene(scene);
// cleanup controller resources when window closes:
Controller controller = loader.getController();
stage.setOnHidden(e -> controller.shutdown());
stage.show();
0
您可以使用Window.setOnHidden
相关问题
- 1. 当控制器调用format.js时,模式不能正常关闭
- 2. VB.NET控制台应用程序中的关闭功能
- 3. CodeIgniter - 关闭控制器函数调用?
- 4. 功能的可调关闭
- 5. 如何从Angular控制器调用Laravel控制器的功能?
- 6. 定时器功能的移动应用程序 - “关闭”
- 7. 从AngularJS控制器调用Android功能
- 8. javascript关闭时的中继器控制
- 9. Javafx如何关闭控制器类的场景
- 10. 全局应用Laravel控制器功能
- 11. extjs4 - 如何从控制器调用应用程序功能?
- 12. 如何使用角度材质对话框在控制器上调用功能
- 13. JavaFX中的NPE在调用控制器中的字段时
- 14. 的InvocationTargetException调用控制器方法时 - JavaFX的
- 15. 上调用视图负载笨控制器功能
- 16. 关闭ngDialog在控制器
- 17. 关闭根控制器
- 18. 调用浏览器的Javascript功能关闭
- 19. 如何在Windows关机时关闭控制台应用程序
- 20. 在控制台关闭C++的执行功能
- 21. 不关闭ViewController的视图控制器调用析构函数
- 22. 从另一个控制器调用另一个控制器的功能
- 23. 如何在codeigniter中的另一个控制器中调用控制器功能
- 24. 如何调用一个控制器的功能,从另一个控制器AngularJs
- 25. 如何在同一个控制器中调用控制器的输出功能?
- 26. Angular UI路由器:调用子状态控制器的功能
- 27. 能够以关闭视图控制器的整个堆叠除了控制器调用解雇
- 28. 当浏览器/标签关闭时调用我的注销功能
- 29. 关闭控制台也关闭GUI应用程序
- 30. 强制关闭应用程序时,升级
非常感谢您,这样做的窍门。我还添加了一些代码来调用主控制器中包含的嵌套控制器的“关闭”方法。 – YellowSub