在 Windows 中,每个屏幕都有一个编号或标识,我假设这与我物理连接显示器电缆的方式有关。我的问题的关键是我可以重新配置这些屏幕,但它们将保持其身份。
Java 的调用GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices()
将给我一个GraphicsDevice
.
如何将阵列中的屏幕顺序与窗口编号相关联?我会对跨平台解决方案感兴趣。
例如,我的 Windows 配置如下所示
但返回的数组看起来像这样
screens[0] = relates to screen 2
screens[1] = relates to screen 3
screens[2] = relates to screen 1
注意我想使用的代码是这样的
frame.setLocation(
screens[i].getDefaultConfiguration().getBounds().x, frame.getY());
wherei
应该是物理编号而不是数组中的位置(或者如果你明白我的意思,它的映射)。