如何识别您的屏幕设备是投影仪还是显示器

时间:2014-08-07 08:33:15

标签: java wmi

我想编写一个wmi和Java,或者两者兼而有之,该程序可以自动查找并识别连接到我的计算机(Windows)的显示设备是监视器还是投影仪。

任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:0)

我不太确定你想说什么,但希望这可以帮助你

java.awt.Window是所有顶级窗口(Frame,JFrame,Dialog等)的基类,它包含返回窗口正在使用的GraphicsConfigurationgetGraphicsConfiguration()方法。 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);

请参阅以下内容:

Link One

Link Two

Link Three

Link Four