说我有一个带有SelectPieceListener的“选择” JButton。
我想检查是否再次执行该动作(单击“选择按钮”)。
但是,actionPerformed是无效的,因此我不能将其用作布尔表达式。

有什么办法吗?
还是使用另一个JButton更好地解决这个问题?

谢谢。

public class SelectPieceListener implements ActionListener {
    @Override
    public void actionPerformed(ActionEvent e) {
        if(c == _st.checkMoveImpossible()) {
            System.out.println("No possible move for "+nextPlayer+": click select to skip turn, " +
                    "or click right to move " + t + " pieces.");

            if(**the action is performed**){_board.setcmi(1);}
            _board.update();
        }

最佳答案

您是否想知道是否已经单击一次选择按钮(1)?还是要确保不会递归调用actionPerformed方法(2)?

(1)只需在SelectPieceListener中添加一个名为“ selectPressed”(或任何其他值)的布尔字段,并在调用actionPerformed时将其设置为true。

(2)不用担心,您似乎不需要手动调用它。

10-08 08:57