如何在 JFXPanel 中执行模态 FileChooser?

M. *_*enk 5 java javafx modal-dialog filechooser javafx-2

我想在使用 JFXPanel 的 awt 应用程序顶部显示一个 FileChooser 对话框。

作为 showOpenDialog 的窗口,我使用设置到该面板的场景的 getWindow()。但是文件选择器出现在应用程序后面,并且 JFXPanel 中的所有内容仍然处于活动状态(即我可以打开更多 FileChooser 对话框、输入文本等)。

我还发现了一些示例代码,在 JFXPanel 的场景窗口和 FileChooser 之间有一个额外的舞台,它使用了 initModality。但行为没有任何变化。

当父级是 JFXPanel 时,任何想法如何将 FileChooser 作为模式对话框打开?

drz*_*ala 0

showOpenDialog()是一个阻塞操作。它应该停止通过 JavaFX 应用程序线程捕获事件。由于您使用的是 swing,因此还有事件调度线程。我会先禁用整个窗口showOpenDialog(),然后再重新启用。确保您正在从 JAT 访问 JFXPanel