代码之家  ›  专栏  ›  技术社区  ›  Stephane Grenier

如何在Java应用程序中打开和关闭监视器?

  •  6
  • Stephane Grenier  · 技术社区  · 16 年前

    如何在Java应用程序中打开和关闭监视器?

    如果你想知道为什么,这是一个亭子式的应用程序,在那里晚上关掉显示器会很好。是的,您可以在机器的屏幕保护程序设置内进行,但是用编程方式进行并避免在每台机器上进行配置是非常好的。

    4 回复  |  直到 12 年前
        1
  •  10
  •   Pablo Santa Cruz    16 年前

    假设您在Windows上部署Java应用程序,则可以使用此Win32 API函数:

    // turn off monitor
    SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) 2); 
    
    // turn on monitor
    SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) -1);    
    

    然后你写一点 C-JNI wrapper 调用上述函数的函数 SendMessage 使用小包装器从Java关闭监视器。

        2
  •  2
  •   Erick Robertson    16 年前

    虽然您可以用Java查询监视器配置,但没有办法在不使用JNI的情况下以编程方式打开和关闭监视器。

        3
  •  2
  •   meain    12 年前

    我见过这个名为 nircmd 在网上。这是一个免费软件,任何人都可以使用它,它有一个内置的功能。

    nircmd.exe monitor off 
    

    网站上还提供了详细的帮助。 只需在程序中使用它并使用

    Runtime.getRuntime().exec(this.getClass().getResource("nircmd.exe").getPath());
    

    或者把它放到Windows目录中,然后从那里运行它。

        4
  •  -4
  •   irreputable    16 年前

    你可以打开一个全屏的摆动窗口,使它完全变黑,所以监视器,就可观察到的行为而言,是关闭的。