Java ActionListener-跟踪actionPerformed是否在actionPerformed方法内调用?
假设我有一个带有SelectPieceListener的“Select”JButton。 我想检查是否再次执行actionclicking Select按钮。 但是,actionPerformed是空的,所以我不能将其用作布尔表达式 有办法吗? 还是使用另一个JButton来处理这个问题更好 多谢各位Java ActionListener-跟踪actionPerformed是否在actionPerformed方法内调用?,java,swing,event-handling,actionlistener,Java,Swing,Event Handling,Actionlistener,假设我有一个带有SelectPieceListener的“Select”JButton。 我想检查是否再次执行actionclicking Select按钮。 但是,actionPerformed是空的,所以我不能将其用作布尔表达式 有办法吗? 还是使用另一个JButton来处理这个问题更好 多谢各位 public class SelectPieceListener implements ActionListener { @Override public void actionP
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方法不是递归调用的 1只需向SelectPieceListener添加一个名为“selectPressed”的布尔字段或其他任何内容,并在调用actionPerformed时将其设置为true
2别担心,您似乎不会手动调用它。您能再澄清一点吗?您想防止actionListener被触发一次以上,还是想知道某个东西在执行时是否再次触发它?为什么不在actionListener类中设置一个计数器变量,并在actionPerformed方法中递增它?我不确定我是否过度简化了你的问题,所以如果这不能解决问题,请大幅度澄清。