使用openWindow()打开视图时无法捕获关闭状态的舞台

时间:2019-03-17 11:01:21

标签: tornadofx

这是我与Kotlin&TornadoFX进行的第一个项目,因此答案可能很简单,但不知何故。 因此,我从应用程序类中打开AllProjectsView,如下所示:

class EngineApp: App(AllProjectsView::class, GlobalStyles::class) {
    override fun start(stage: Stage) {
        super.start(stage)
        stage.minWidth = 700.0
        stage.icons.add(Image("resources/logo/pe.png"))
    }
}

如果我在此处添加stage.setOnCloseRequest { event -> event.consume() },它将在AllProjectsView上运行。此视图包含一个列表视图,当我单击某个项目时,会打开一个新的ProjectView窗口:

action {
    close()
    ProjectView(selectedProject.item.projectTitle).openWindow()
}

我尝试在初始化新窗口时以及在视图的primaryStage.setOnCloseRequest { event -> event.consume() }中添加root,但是它不起作用。 我想做的就是仅禁用ProjectView的关闭按钮,同时仍然保持AllProjectsView的关闭按钮。 谢谢。

0 个答案:

没有答案