anv*_*nvd 0 java events swing button actionlistener
有可能通过一个独特的eventListener来识别btn被按下了吗?
我尝试了这段代码,但没有用
ActionListener one = new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (gr1.getCounter1() < 5) {
gr1.setCounter1(gr1.getCounter1() + 1);
if (arraybtn[1].isSelected())
test1.setIcon(play1a);
if (arraybtn[2].isSelected())
test1.setIcon(play1b);
if (arraybtn[3].isSelected())
test1.setIcon(play1c);
if (arraybtn[4].isSelected())
test1.setIcon(play1d);
if (arraybtn[5].isSelected())
test1.setIcon(play1e);
} else {
pn5.setText("No more cards");
}
}
};
Run Code Online (Sandbox Code Playgroud)
谢谢, !
使用对象中的getSource
方法ActionEvent
.
您的代码如下所示:
if (e.getSource() == arraybtn[1])
test1.setIcon(play1a);
if (e.getSource() == arraybtn[2])
test1.setIcon(play1b);
if (e.getSource() == arraybtn[3])
test1.setIcon(play1c);
if (e.getSource() == arraybtn[4])
test1.setIcon(play1d);
if (e.getSource() == arraybtn[5])
test1.setIcon(play1e);
Run Code Online (Sandbox Code Playgroud)
获取事件的来源(即按下的按钮).
http://download.oracle.com/javase/1.4.2/docs/api/java/util/EventObject.html#getSource()