スクリーンセーバーのようにJavaコードを使用してモニターの画面ライトをオフにする方法はありますか.ボタンを押すと画面ライトがオフになり、キーまたはマウスを押すとライトが戻ります.
質問する
2669 次
3 に答える
5
スクリーン セーバーのように Java コードを使用してモニター画面のライトをオフにする方法はありますか。
標準 API を使用したプラットフォームに依存しない方法ではありません。いくつかのシステム固有のコマンドに依存する必要があります。
Linuxボックスでは、たとえば次のことができます
Runtime.getRuntime().exec("xset dpms force off");
于 2012-07-26T11:46:01.643 に答える
4
これは、オペレーティング システムによって既に実装されている機能です。オペレーティング システムとハードウェアに依存する機能に深く結びついているため、純粋な Java で実行するのは困難ですが、C++ では簡単に実行できます。
#include <windows.h>
#include <ctime>
int main() {
int seconds = 10;
clock_t delay = seconds *CLOCKS_PER_SEC, start = clock();
while(clock() - start < delay)
SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) 2);
SendMessage(HWND_BROADCAST, WM_SYSCOMMAND, SC_MONITORPOWER, (LPARAM) 2);
return 0;
}
于 2012-07-26T11:58:21.113 に答える
0
これは非常にシステム固有のものです。間違いなくオペレーティングシステム固有であり、おそらくハードウェア固有でもあります。
Java は、この種のことには最適ではありません。おそらく可能ですが、ネイティブ OS ユーティリティを実行するか、ネイティブ コード ライブラリを呼び出す小さな C アプリケーションを作成するなど、より良い方法があります。
于 2012-07-26T11:58:59.603 に答える