0

こんにちは、アプレットを拡張する Java でゲームを作成しました。ゲームは問題なく動作しますが、この割り当ての要件の 1 つは、メニューがあることです。例: プログラムが実行されると、「再生」オプションと「終了」オプションを含む画面が表示され、ユーザーが「再生」をクリックすると、ゲームが開始されます。

Q) アプレット専用にこれを行う方法はありますか?

次のコードを使用して aa メニューを作成しようとしましたが、機能しません (これは、拡張された JPanel または JFrame が拡張されたアプレットではないためだと思います):

MainMenu.java

public class MainMenu extends JFrame {

    int screenWidth = 200;
    int screenHeight = 150;

    int buttonWidth = 100;
    int buttonHeight = 40;

    JButton Play;
    JButton Quit;

    public MainMenu() {
        addButtons();
        addActions();

        Play.setBounds((screenWidth - buttonWidth)/2, 5 , buttonWidth, buttonHeight); // Positions the play button
        Quit.setBounds((screenWidth - buttonWidth)/2, 10 , buttonWidth, buttonHeight);

        //Adding buttons
        getContentPane().add(Play); //add the button to the Frame
        getContentPane().add(Quit);

        pack();
        setVisible(true);
        setLocationRelativeTo(null);
        setSize(screenWidth , screenHeight);
        setTitle("Drop");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setResizable(false);

    }

    private void addButtons() {
        Play = new JButton ("Play");
        Quit = new JButton ("Quit");

    }

    private void addActions() {
        Play.addActionListener(new ActionListener() {   // takes play button, adds new actionlistener

            public void actionPerformed(ActionEvent e) { // Turn actionPerformed into variable for usage
                dispose();                               // wipes out Jframe

                Board game = new Board();

                game.run();
            }
        }); //Play Button

        Quit.addActionListener(new ActionListener() {   // takes quit button, adds new actionlistener

            public void actionPerformed(ActionEvent e) { // Turn actionPerformed into variable for usage
                System.exit(0); 
            }
        }); //Quit Button
    }
}

Launcher.java (メニューの実行元)

public class Launcher {

    public static void main (String[] args){

        new MainMenu();
    }
}

どんな助けでも大歓迎です(アイデア、チュートリアル...)

4

2 に答える 2