深さ優先探索で迷路を解くプログラムを書きました。この Java プログラムをスクリーンセーバー アプリケーションに変換する方法を考えていました。スクリーンセーバーが通常アクティブになっているときに Windows 7 がアプリを起動する方法はありますか?
6 に答える
Windowsスクリーンセーバーは、特定のコマンドライン引数を受け入れる単なるプログラムです。したがって、プログラムをスクリーンセーバーとして実行できるようにするには、それらの引数を受け入れるようにプログラムをコーディングする必要があります。
次に、スクリーンセーバーをフルスクリーンモードで実行することをお勧めします。以下の例が示すように、これはJavaで行うのは非常に簡単です。
public final class ScreenSaver {
public static final void main(final String[] args) throws Exception {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
final JFrame screenSaverFrame = new JFrame();
screenSaverFrame.setDefaultCloseOperation(
WindowConstants.EXIT_ON_CLOSE);
screenSaverFrame.setUndecorated(true);
screenSaverFrame.setResizable(false);
screenSaverFrame.add(new JLabel("This is a Java Screensaver!",
SwingConstants.CENTER), BorderLayout.CENTER);
screenSaverFrame.validate();
GraphicsEnvironment.getLocalGraphicsEnvironment()
.getDefaultScreenDevice()
.setFullScreenWindow(screenSaverFrame);
}
}
最後に、 Launch4jなどを使用してJavaプログラムをWindows実行可能ファイルにし、.scr
拡張機能を与える必要があります。
私はこれを使用したことはありませんが、出発点になるかもしれません。スクリーン セーバー API。
現在、スクリーンセーバー SDK へのリンクが壊れているようですので、インデックス ページJDICにリンクしています。彼らがリンクを修正したら、これを調整します。
Windows スクリーンセーバーは、特定のコマンド ライン引数を受け入れる単なる exe ファイルです。詳細については、こちらを参照してください。
Java アプリを exe にコンパイルできる場合 (私はもう Java をあまり使用していないため、どのツールが存在するのかわかりません)、その名前を .scr に変更します。または、次のような .bat ファイルを作成するだけで十分な場合があります。
@echo off
java myProg.class %1
..名前を に変更し.scr
ます。
JScreenSaverライブラリを使用します。JScreenSaverは、Windows 用のスクリーンセーバーを Java 言語で作成するミドルウェアです。
Java でスクリーン セーバーを作成するためのSaverBeans API を調べます。
このアプローチに代わるものの 1 つは、新しい JavaFX です。Swing で行うのと同じ方法で、凝ったスクリーン セーバーを作成できます。その上、NetBeans を使用して *.exe ファイルを非常に簡単に取得できます。