16

深さ優先探索で迷路を解くプログラムを書きました。この Java プログラムをスクリーンセーバー アプリケーションに変換する方法を考えていました。スクリーンセーバーが通常アクティブになっているときに Windows 7 がアプリを起動する方法はありますか?

4

6 に答える 6

18

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拡張機能を与える必要があります。

于 2010-01-25T22:37:20.163 に答える
8

私はこれを使用したことはありませんが、出発点になるかもしれません。スクリーン セーバー API


現在、スクリーンセーバー SDK へのリンクが壊れているようですので、インデックス ページJDICにリンクしています。彼らがリンクを修正したら、これを調整します。

于 2010-01-25T22:07:09.467 に答える
5

Windows スクリーンセーバーは、特定のコマンド ライン引数を受け入れる単なる exe ファイルです。詳細については、こちらを参照してください。

Java アプリを exe にコンパイルできる場合 (私はもう Java をあまり使用していないため、どのツールが存在するのかわかりません)、その名前を .scr に変更します。または、次のような .bat ファイルを作成するだけで十分な場合があります。

@echo off
java myProg.class %1

..名前を に変更し.scrます。

于 2010-01-25T22:06:18.890 に答える
1

JScreenSaverライブラリを使用します。JScreenSaverは、Windows 用のスクリーンセーバーを Java 言語で作成するミドルウェアです。

于 2013-06-13T09:24:31.757 に答える
1

Java でスクリーン セーバーを作成するためのSaverBeans API を調べます。

于 2010-01-25T22:09:15.867 に答える
0

このアプローチに代わるものの 1 つは、新しい JavaFX です。Swing で行うのと同じ方法で、凝ったスクリーン セーバーを作成できます。その上、NetBeans を使用して *.exe ファイルを非常に簡単に取得できます。

于 2013-02-27T22:50:16.913 に答える