我使用 JButton
创建了棋盘,我使用 ASCII 值来处理棋子。
我向所有按钮添加了 ActionListener
。当我单击源(第一个)按钮时,actionPerformed
事件被调用,我将按钮的值存储在变量中。
但问题是当我单击目标按钮时 actionPerformed
事件被调用并且值被替换为源按钮值。
我想要不同变量中的源按钮值和目标按钮值。怎么可能?
public void actionPerformed(ActionEvent ae)
{
JButton o = (JButton) ae.getSource();
value = o.getText();
}
最佳答案
然后您需要 2 个变量来存储这两个值,并需要第三个变量来告诉您发生了哪次点击。
if(isSource){
source = o.getText();
isSource = false;
}else{
destination = o.getText();
isSource = true;
}
这样,在第一次单击时您知道源的值,在第二次单击时您知道目标的值。然后在下一次点击时它又是一个来源等等。
关于java - Swing中的按钮点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15278013/