我想编写一个wmi和Java,或者两者兼而有之,该程序可以自动查找并识别连接到我的计算机(Windows)的显示设备是监视器还是投影仪。
任何想法如何做到这一点?
答案 0 :(得分:0)
我不太确定你想说什么,但希望这可以帮助你
java.awt.Window是所有顶级窗口(Frame,JFrame,Dialog等)的基类,它包含返回窗口正在使用的GraphicsConfiguration的getGraphicsConfiguration()
方法。 GraphicsConfiguration具有getGraphicsDevice()
方法,该方法返回GraphicsConfiguration所属的GraphicsDevice。然后,您可以使用GraphicsEnvironment类对系统中的所有GraphicsDevices进行测试,并查看Window属于哪一个。
Window myWindow = ....
// ...
GraphicsConfiguration config = myWindow.getGraphicsConfiguration();
GraphicsDevice myScreen = config.getDevice();
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
// AFAIK - there are no guarantees that screen devices are in order...
// but they have been on every system I've used.
GraphicsDevice[] allScreens = env.getScreenDevices();
int myScreenIndex = -1;
for (int i = 0; i < allScreens.length; i++) {
if (allScreens[i].equals(myScreen))
{
myScreenIndex = i;
break;
}
}
System.out.println("window is on screen" + myScreenIndex);
请参阅以下内容: