swingを用いてじゃんけんゲームを作っています。
以前質問させていただいたKeyEventはわかったのですが、それをプログラムになおすときにどのように繋げたらいいのかわかりません。
コード public class janken extends JFrame{ public static void main(String args[]){ janken frame = new janken("ジャンケンゲーム"); frame.setSize(1280, 1020); frame.setLocationRelativeTo(null); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public janken(String title){ setTitle(title); JPanel panel1 = new JPanel(); panel1.setLayout(new BorderLayout()); JLabel label1 = new JLabel("ジャンケンスタート", JLabel.CENTER); label1.setFont(new Font("MS ゴシック", Font.BOLD, 36)); panel1.add(label1); add(panel1); }
今「じゃんけんスタート」という文字を真ん中に出しているのですが、この画面からEnterキーを押してプレイヤー人数選択画面に切り替えたいと思っています。
その時に
コード public void keyPressed(KeyEvent evt) { if(evt.getKeyCode() == KeyEvent.VK_ENTER){ JPanel panel2 = new JPanel(); JLabel label2 = new JLabel("プレイヤー人数は?"); panel2.add(label2); add(panel2); }
プログラムは適当ですがこのようなプログラムを繋げても動きませんでした。
コード public class janken extends JFrame{ public static void main(String args[]){ janken frame = new janken("ジャンケンゲーム"); frame.setSize(1280, 1020); frame.setLocationRelativeTo(null); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public janken(String title){ setTitle(title); JPanel panel1 = new JPanel(); panel1.setLayout(new BorderLayout()); JLabel label1 = new JLabel("ジャンケンスタート", JLabel.CENTER); label1.setFont(new Font("MS ゴシック", Font.BOLD, 36)); panel1.add(label1); add(panel1); } public void keyPressed(KeyEvent evt) { if(evt.getKeyCode() == KeyEvent.VK_ENTER){ JPanel panel2 = new JPanel(); JLabel label2 = new JLabel("プレイヤー人数は?"); panel2.add(label2); add(panel2); } } }
「じゃんけんスタート」
↓
Enterキーを押す
↓
「プレイやー人数は?」
このように動作させるにはどのように直したらよいのでしょうか?
説明が下手ですみませんがよろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/09/15 07:20
2015/09/15 07:32
2015/09/15 08:24