当我按下窗口右上角的x按钮时,我希望我的JavaFX程序清理程序。我怎样才能做到这一点?清理代码是
JIntellitype.getInstance().cleanUp();
答案 0 :(得分:12)
如果您有多个窗口并且清理仅用于分配给正在关闭的窗口的资源,请为窗口的setOnHidden事件添加适当的事件处理程序。
Window.setOnHidden事件的描述:
隐藏窗口后调用。当窗口是 隐藏,调用此事件处理程序,允许开发人员清理 关闭窗口时启动资源或执行其他任务。
如果为JavaFX应用程序创建多个阶段,则应用程序将在应用程序的最后一个阶段关闭时关闭。当应用程序关闭时,将调用应用程序的stop方法,您可以通过在Application类中重写它来实现该方法。
Application.stop方法的说明:
当应用程序停止时调用此方法,并为准备应用程序退出和销毁资源提供方便的位置。
在您的情况下,提供Application.stop的实现可能是最合适的解决方案。