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

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

我还发现了一些示例代码,在JFXPanel的“场景窗口”和FileChooser之间有一个附加的Stage,它使用initModality。但是行为没有改变。

有任何想法如何在父级为JFXPanel时打开FileChooser作为模式对话框?

最佳答案

showOpenDialog()是一个阻止操作。它应停止通过JavaFX Application Thread捕获事件。由于您使用的是秋千,所以还有事件调度线程。我将在showOpenDialog()之前禁用整个窗口,然后在之后重新启用。确保您正在从J.A.T.访问JFXPanel。

07-26 09:40