2012-04-04 52 views
1

我在多显示器环境中运行Swing GUI。从主GUI中,我想打开第二个屏幕。如果主GUI已经在第二个监视器中运行,则新窗口应在第一个监视器中打开。在哪个监视器面板中运行我的Swing GUI?

所以我正在寻找获得当前主要GUI运行的显示器ID的可能性。

任何想法?

+1

看看这个问题,并找到答案:http://stackoverflow.com/questions/4627553/java-show-jframe-in-a-specific-screen-in-dual-monitor-configuration – Stephan 2012-04-04 10:58:43

+0

不是真的。如果我将GUI设置为屏幕1,并且用户将其移动到屏幕2,则新的GUI也会出现在屏幕2中。但是应该先打开它。

所以我必须从JPanel读取屏幕 – ReloadRabbit 2012-04-04 11:21:16

回答

3

GraphicsEnvironment上课应该会有所帮助。

类似的问题已经回答here

为了识别帧在任何给定时间点位于哪个屏幕上,很可能需要跟踪帧的位置(即,用户拖动它们的位置)。这可以通过监视关于屏幕的鼠标事件来完成,如here所解释的。

+0

随着GraphicsEnvironment我只有屏幕的数量和大小,但没有信息,如果我的应用程序运行在哪个屏幕... – ReloadRabbit 2012-04-04 11:44:21

+0

我已经更新了答案。 – 01es 2012-04-04 12:09:27