2012-03-13 3 views
3

Я хочу показать диалог FileChooser поверх awt-приложения, которое использует JFXPanel.Как сделать модальный FileChooser в JFXPanel?

Как окно для showOpenDialog, я использую getWindow() для сцены, установленной на этой панели. Но выбор файла появляется за приложением, и все в JFXPanel все еще остается активным (т. Е. Я могу открыть больше диалогов FileChooser, ввести текст и т. Д.).

Я также нашел некоторый пример кода с дополнительной сценой между окном сцены JFXPanel и FileChooser, который использует initModality. Но никаких изменений в поведении нет.

Любые идеи о том, как открыть FileChooser в качестве модального диалога, когда родительский JFXPanel?

+0

После всех этих лет это все еще проблема, вот открытая ошибка для всех, кто находит это. Https://bugs.openjdk.java.net/browse/JDK-8087620 – meyertee

ответ

0

showOpenDialog() - операция блокировки. Он должен прекратить захватывать события в приложении JavaFX Application Thread. Поскольку вы используете swing, есть также Event Dispatch Thread. Я отключил бы все окно до showOpenDialog(), а затем снова включил его. Убедитесь, что вы получаете доступ к JFXPanel от J.A.T.

 Смежные вопросы

  • Нет связанных вопросов^_^