java – 指定单个JOptionPane的目标屏幕

我有一个使用JOptionPane.show *方法通知的应用程序
用户在显示应用程序主窗口之前的各种条件.
在多屏幕设置中,这些始终显示在第一个屏幕上.这通常只是
一个轻微的烦恼,但在0屏幕关闭或断开连接时出现问题.

可以使用获得的GraphicsConfiguration正确放置正常窗口
通过MouseInfo,但我找不到将其传递给JOptionPane的方法.我可以
不要使用主窗口来锚定对话框,因为没有主要的
应用程序启动阶段的窗口.可能的对话框之一是
关于过时的java版本的警告,所以在显示之前显示主窗口
错误不是选项,因为用户的java运行时甚至可能无法使用
显示主窗口.

有没有办法在不重新实现主要部分的情况下指定目标屏幕
JOptionPane?

解决方法:

您可以从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);

编辑:或者,您可以根据安德鲁的精彩评论(现在不再存在?)从头创建自己的JDialog窗口.

上一篇:Cholesky分解


下一篇:java – 在JOptionPane中显示JDateChooser