1
我有两个显示器,一个是1440 * 900,另一个是1920 * 1080。我可以重新排列在显示器那样的许多方面:如何检测多显示器系统中的屏幕位置?
或像这样:
另外,我可以镜面屏幕以及。我怎样才能使用纯Java获得这些信息?谢谢。
我有两个显示器,一个是1440 * 900,另一个是1920 * 1080。我可以重新排列在显示器那样的许多方面:如何检测多显示器系统中的屏幕位置?
或像这样:
另外,我可以镜面屏幕以及。我怎样才能使用纯Java获得这些信息?谢谢。
退房GraphicsEnvironment.getScreenDevices()
,你可以从每个设备得到屏幕边界矩形,如:
GraphicsDevice[] screens = GraphicsEnvironment
.getLocalGraphicsEnvironment()
.getScreenDevices();
for (GraphicsDevice screen:screens)
System.out.println(screen.getDefaultConfiguration().getBounds());
在我的双显示器系统会显示:
java.awt.Rectangle[x=0,y=0,width=1600,height=900]
java.awt.Rectangle[x=-320,y=-1200,width=1920,height=1200]
您可以使用getDefaultScreenDevice()
图哪一个是主监视器?您可以从GraphicsDevice
获得很多其他信息,这些信息可能有用。
很确定只有显示驱动程序会有这种信息。认为这是你可以在Java中做的最好的:http://stackoverflow.com/questions/877570/java-getting-resolutions-of-one-all-available-monitors-instead-of-the-whole-de – Durandal
@ JasonC是的,我不知道普通的Java可以做的事情远远超出我们发布的内容。 Android对这种事情有更多的支持,但是不要认为它符合'纯java' – Durandal
@Durandal哦,很好的链接。是的,除了你可以使用'getDefaultConfiguration()。getBounds()'来获得监视器的实际相对坐标外,你可以做这个链接中的内容。如果你愿意的话,你可以用它来生成TedWong发布的图片。 –