如何检测我的显示器现在设置的来源?

时间:2015-11-13 01:15:26

标签: c# .net winforms generics

现在我的显示器设置为DVI-D,我知道它是我的电脑。 但是例如我的Playstation 4连接到HDMI 1 我想要做的是当我将我的显示器源更改为HDMI 1检测它时,当我将其更改回DVI-D时检测到它,以便我可以知道我的显示器源何时在PC上或ps4上。

到目前为止我尝试的是这个。 我在设计器中添加了一个计时器,我正在运行计时器40秒,并在计时器中调用一个方法:

public static void main(String[] args) {

    double userInput = 1;
    double sum = 0;

    Scanner in = new Scanner(System.in);

    while (userInput != 0) {

        try {

            System.out.println("Enter a number. (0 to quit):");
            userInput = in.nextDouble();

            sum = sum + userInput;
        } catch (InputMismatchException nfe) {
            System.out.println("Invalid Number");
            in.next();
        }

    }
    in.close();
    System.out.println("The sum of the numbers is " + sum + ".");
}

方法DetectScreenName:

int counttimer2 = 0;
    private void timer2_Tick(object sender, EventArgs e)
    {
        if (counttimer2 == 40)
        {
            w.Close();
            timer2.Stop();
        }
        DetectScreenName();
        counttimer2 += 1;
    }

在文本文件中,我正在编写结果以查看更改,所有结果都是相同的:

通用PnP监视器 DesktopMonitor1 通用PnP监视器

每一秒我看到:

通用PnP监视器 DesktopMonitor1 通用PnP监视器

将显示器源切换到HDMI 1时,它没有改变

1 个答案:

答案 0 :(得分:0)

当您切换显示器的来源时,您的计算机没有任何变化 - 就好像显示器已关闭一样。

不幸的是,您无法可靠地检测到这一点,如Is there any way to detect the monitor state in Windows (on or off)?Detect external display being connected or removed under Windows 7中所述。