我编写了primaryStage的defaultCloseOperation函数,但我也有一个退出按钮,我想运行该defaultCloseOperation。 我尝试调用阶段的 close() 和 hide() 方法,但它立即退出,而不调用我的 defaultCloseOperation 函数,但我需要调用它,因为当我关闭客户端时,我需要从服务器端释放所有资源.
最佳答案
请勿在 Stage
的关闭操作中执行此操作。
这就是Application.stop
方法应该用于。
@Override
public void stop() throws Exception {
// TODO: release resources here
}
<小时/>
但是,如果多个窗口之一使用了资源,则应为 onHidden
事件使用事件处理程序 - 无需扩展 Stage
:
stage.setOnHidden(event -> {
// TODO: release resources here
});
关于java - 如何在javafx中调用阶段的默认关闭操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44206423/