如何在同一个监视器中获取JOptionPane.showOptionDialog?

时间:2015-08-19 17:32:14

标签: java swing joptionpane

我有一台可以连接两台显示器的笔记本电脑。 我通常在Monitor 2上运行我的应用程序(这是一个外部监视器)。

在我的应用程序中,我正在调用JOptionPane.showOptionDialog,但问题是尽管运行并且在应用程序上执行了所有计算,但对话框始终显示在监视器(即笔记本电脑屏幕)上监视两个。

我甚至尝试了getParent()方法,但没有任何效果,我希望它能弹出调用它的JPanel。

以下是我的JOptionPane.showOptionDialog示例:

JOptionPane.showOptionDialog(getParent() ,
                jsr, //object
                "MESSAGES",
                JOptionPane.YES_NO_OPTION,
                JOptionPane.ERROR_MESSAGE,
                null,
                options,
                options[0]);
   scrollPane.setViewportView(textArea);
   validate();
   repaint();

这非常令人讨厌,因为有时我认为应用程序崩溃了,因为监视器中没有任何东西,但实际上监视器中有一个对话窗口。

  

编辑:

     

这是一个新问题,因为我没有任何问题   对话框在顶部,我也使用了getParent()的解决方案   方法,但它没有奏效。我的主要问题是显示器,如果我   我正在运行一个应用程序监视器 - 2应该显示所有内容   监测-2。但在我的情况下,这种情况并没有发生。

有没有其他方法可以解决这个问题?或者有人可以证明这个问题吗? 感谢

1 个答案:

答案 0 :(得分:2)

尝试JOptionPane.showMessageDialog(this, "Testing");,根据this它应该有所帮助。