访问从ActionPerformed单击的JButton?

时间:2012-10-30 18:26:22

标签: java swing jbutton actionlistener

我从大学毕业,我必须在界面中有5个按钮,当点击按钮时,我必须对该按钮执行操作。但是当我在actionPerformed()中使用“this”时,它并没有引用“被点击的按钮”,而且我无法锻炼其实际所指的内容。

所以:

  1. ActionPerformed()动作处理程序中的“this”是什么意思?
  2. 使用“e.getActionCommand()”时,使用“点击”按钮做任何不错的方法,而不使用一堆if语句?

1 个答案:

答案 0 :(得分:6)

您可以使用EventObject#getSource(),它由ActionEvent继承。

@Override
public void actionPerformed(ActionEvent e) { 
    JButton source = (JButton) e.getSource();
    ...
}

在ActionListener中,this引用ActionListener对象本身,而不是源对象。