4

アプリケーションのメイン ウィンドウを表示する前に、メソッドを使用しJOptionPane.show*てさまざまな条件をユーザーに通知するアプリケーションがあります。マルチスクリーン設定では、これらは常に最初のスクリーンに表示されます。これは通常、小さな煩わしさでしかありませんが、0 画面がオフまたは切断されている場合に問題になります。

通常のウィンドウは、GraphicsConfiguration取得した viaを使用して正しく配置できますMouseInfoが、それを に渡す方法が見つかりませんJOptionPane。アプリケーション起動のその段階ではメイン ウィンドウがないため、メイン ウィンドウを使用してダイアログを固定することもできません。表示される可能性のあるダイアログの中には、廃止された Java バージョンに関する警告があります。ユーザーの Java ランタイムではメイン ウィンドウを表示できない可能性があるため、エラーが発生する前にメイン ウィンドウを表示することはできません。

の大部分を再実装せずにターゲット画面を指定する方法はありますJOptionPaneか?

4

1 に答える 1

3

JOptionPane から JDialog を作成し、任意の場所にダイアログを表示できます。

JOptoinPane APIに従って:

 JOptionPane pane = new JOptionPane(arguments);
 pane.set.Xxxx(...); // Configure
 JDialog dialog = pane.createDialog(parentComponent, title);
 // here set the dialog's location
 dialog.setVisible(true);

編集: または、Andrew のすばらしいコメントに従って、独自の JDialog ウィンドウを de novo で作成することもできます (それはもう存在しませんか?)。

于 2013-07-27T14:09:56.167 に答える