1

假设我有一个带有 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();
        }
4

1 回答 1

0

您想知道选择按钮是否已经被点击过一次 (1) 吗?或者你想确保 actionPerformed 方法不被递归调用 (2)?

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

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

于 2013-04-05T02:29:13.663 回答