gpt4 book ai didi

java - 如何在 TornadoFX 窗口关闭时关闭整个应用程序?

转载 作者:行者123 更新时间:2023-12-02 09:06:41 25 4
gpt4 key购买 nike

当 TornadoFX 窗口关闭时,如何关闭整个应用程序?

对于 JavaFX,通常是:

val app = JFrame()
app.defaultCloseOperation = JFrame.EXIT_ON_CLOSE

有没有办法检测 TornadoFX View 已关闭?

最佳答案

通常,关闭主阶段会激活 App 类的 stop() 函数。这是您想要覆盖以执行您自己的关闭例程的内容:

class MyApp : App (FirstView::class) {
override fun stop() {
super.stop()
/* Do your shutdown routine here */
}
}

但是,我遇到过该逻辑被破坏并且只能关闭所有程序窗口的情况。如果您希望确保关闭程序的“主窗口”,请将其添加到您的 App 类中:

override fun start(stage: Stage) {
stage.setOnHiding { stop() }
}

编辑:我将使用您的 IDE 来查看 stop() 函数到底为您做了什么,并查看 Abra 链接的答案以了解普通 JavaFX Platform.exit() 函数的作用是,TornadoFX 只是 JavaFX 的核心,这是 JavaFX 应用程序最明确的关闭。该线程中的一些用户报告说,他们的程序仍然会挂起,具体取决于他们正在做什么,并建议在 Kotlin 中添加 System.exit(0);,又名 exitProcess(0) ,到他们的关闭例程以确保程序终止。

关于java - 如何在 TornadoFX 窗口关闭时关闭整个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59763393/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com