-2

私が作ったプログラムにイースターエッグとしてスペースインベーダーを追加したかっただけです。ここでオープンソースコードを見つけました

ゲームはそれ自体で正常に実行されます。ただし、プログラムのボタンから実行しようとすると、プログラムとそのゲームがフリーズします。私は彼のソースコードを取得して追加したので、同じjarファイルにあります。

私はそれを始めるために2つの方法を試しました。

java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {         
                Game.main(null);
                }
        });           
        }

昔ながらGame.main(null);

これを別の方法で開始する必要がありますか?

4

1 に答える 1

0
public static void main() {  

        // Start the main game loop, note: this method will not
        // return until the game has finished running. Hence we are
        // using the actual main thread to run the game.    
        SpaceInvaders si = new SpaceInvaders();
        Thread SpaceInvaders = new Thread(si);
        SpaceInvaders.start();          
        }

    @Override
    public void run() {
        // TODO Auto-generated method stub
        new SpaceInvaders().gameLoop();
    }
}

独自のスレッドを作成する必要がありました。

于 2013-02-06T16:57:44.170 に答える