-1

現在、Swing を使用して Java でゲームを作成しています。私はボタンを持っています。それが 1 つのことをしたら、そのアクションを変更したいと思います。if ステートメント、if-else ステートメント、while ループ、その他さまざまなことを試しましたが、うまくいきません。誰でもこのようなことをする方法を知っていますか?

4

2 に答える 2

4

次の行に沿ってクラス レベルの属性を作成します。

boolean buttonHasFiredOnce = false;

アクション実行メソッドに、次のようなコードを配置します。

if (!buttonHasFiredOnce) { 
  doFirstMethod();
  buttonHasFiredOnce = true;
} else {
  doSecondMethod();
}
于 2014-01-08T01:12:34.320 に答える
0

を交換することをお勧めしますActionListener

public static void changeAction(JButton button, ActionListener al) {
    for (ActionListener listener: button.getActionListeners()) {
        button.removeActionListener(listener);
    }
    button.addActionListener(al);
}

次に、アクションを変更したいとき...

changeAction(button, new ActionListener() {
     @Override
     public void actionPerformed(ActionEvent e) {
         //Insert Action Code
     }
});
于 2014-01-08T03:29:13.490 に答える