2012-03-13 23 views
3

JFXPanelを使用するawtアプリケーションの上にFileChooserダイアログを表示したいとします。JFXPanelでモーダルFileChooserを行うには?

showOpenDialogのウィンドウとして、私はそのパネルに設定されたシーンのgetWindow()を使用します。しかし、ファイルチューザーがアプリケーションの後ろに表示され、JFXPanelのすべてがアクティブなままです(つまり、FileChooserダイアログをもっと開いたり、テキストを入力するなど)。

また、JFXPanelのシーンウィンドウと、initModalityを使用するFileChooserの間に、追加のステージを持つサンプルコードがあります。しかし、行動に変化はありません。

親がJFXPanelのときに、FileChooserをモーダルダイアログとして開く方法はありますか?

+0

これらのすべての年の後、これはまだ問題です。これを見つけた人のためのオープンバグです。https://bugs.openjdk.java.net/browse/JDK-8087620 – meyertee

答えて

0

showOpenDialog()はブロック動作です。 JavaFXアプリケーションスレッドによるイベントのキャプチャを停止する必要があります。スイングを使用しているので、Event Dispatch Threadもあります。私はshowOpenDialog()の前にウィンドウ全体を無効にしてから、再び有効にします。 J.A.T.からJFXPanelにアクセスしていることを確認してください。

関連する問題