Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 获取辅助监视器的位置。(主屏幕的右侧/左侧)_Java_Multiple Monitors - Fatal编程技术网

Java 获取辅助监视器的位置。(主屏幕的右侧/左侧)

Java 获取辅助监视器的位置。(主屏幕的右侧/左侧),java,multiple-monitors,Java,Multiple Monitors,我正在开发一个程序,它需要在屏幕上查找对象,目前为止运行良好,但我在多监视器配置方面遇到了问题 GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices()-类能够提供我在多个屏幕上定义搜索区域所需的几乎所有详细信息,但不能提供设备的顺序。(例如,辅助监视器位于主监视器的右侧) 因此,我正在寻找一种方法来找出主监视器和辅助监视器的屏幕位置,Java。您可能需要从每个设备的x和y坐标推导出该值。您可能需要从每个设备的x和y

我正在开发一个程序,它需要在屏幕上查找对象,目前为止运行良好,但我在多监视器配置方面遇到了问题

GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices()
-类能够提供我在多个屏幕上定义搜索区域所需的几乎所有详细信息,但不能提供设备的顺序。(例如,辅助监视器位于主监视器的右侧)


因此,我正在寻找一种方法来找出主监视器和辅助监视器的屏幕位置,Java。

您可能需要从每个设备的x和y坐标推导出该值。

您可能需要从每个设备的x和y坐标推导出该值。

x和y坐标将把辅助屏幕置于右侧

但是,您无法知道主屏幕是在左侧、中间还是右侧。这取决于插入显示器的人


实际上,有一种方法可以在一个工作站上配置9个面板。(我希望我有这个。)所以屏幕方向取决于用户。

x和y坐标将使辅助屏幕位于右侧

但是,您无法知道主屏幕是在左侧、中间还是右侧。这取决于插入显示器的人

实际上,有一种方法可以在一个工作站上配置9个面板。(我希望我有这个。)所以屏幕方向取决于用户。

您可以尝试读取值来确定监视器的ID

GraphicsEnvironment ge = GraphicsEnvironment.
getLocalGraphicsEnvironment();
GraphicsDevice[] gs = ge.getScreenDevices();
for (int j = 0; j < gs.length; j++) { 
   GraphicsDevice gd = gs[j];
   System.out.println("ID#: " + gd.getDeviceID());
}
请记住,有时辅助监视器可能位于主监视器的左侧。在这种情况下,它将具有负边界

为了确定屏幕区域的整个边界,您可以使用JDK Javadocs站点提供的示例:

您可以尝试读取值以确定监视器的ID

GraphicsEnvironment ge = GraphicsEnvironment.
getLocalGraphicsEnvironment();
GraphicsDevice[] gs = ge.getScreenDevices();
for (int j = 0; j < gs.length; j++) { 
   GraphicsDevice gd = gs[j];
   System.out.println("ID#: " + gd.getDeviceID());
}
请记住,有时辅助监视器可能位于主监视器的左侧。在这种情况下,它将具有负边界

为了确定屏幕区域的整个边界,您可以使用JDK Javadocs站点提供的示例:

也许这个问题会有帮助:也许这个问题会有帮助:是的,可能会有用:`screenDevices[i].getDefaultConfiguration().getBounds().x);和屏幕设备[i].getDefaultConfiguration().getBounds().y);从那里返回绝对位置这只是简单的数学。。。非常感谢有时候只是为了讣告…--是的,这可能会起作用:`screenDevices[i].getDefaultConfiguration().getBounds().x);和屏幕设备[i].getDefaultConfiguration().getBounds().y);从那里返回绝对位置这只是简单的数学。。。非常感谢有时候只是为了讣告…--我在寻找带有多个监视器的最小和最大屏幕值,GraphicsConfiguration Javadoc示例(带有几个小计算)正好提供了我所需要的。谢谢我在寻找带有多个监视器的最小和最大屏幕值,GraphicsConfiguration Javadoc示例(带有几个小计算)正好提供了我所需要的。谢谢