假设我有一个带有 SelectPieceListener 的“选择”JButton。 我想检查是否再次执行该操作(单击选择按钮)。 但是,actionPerformed 是 void,所以我不能将它用作 boolean 表达式。
有什么办法可以做到这一点吗? 或者使用另一个 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”(或其他名称)的 boolean 字段,并在调用 actionPerformed 时将其设置为 true。
(2) 不用担心,您似乎没有手动调用它。
关于java - ActionListener - 跟踪是否在 actionPerformed 方法内调用了 actionPerformed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15824379/