将动作侦听器设置为多个按钮的最佳方法

时间:2014-03-09 01:00:09

标签: java swing listeners

我几乎没有与按钮听众合作过,并且已经在网上寻找至少3个小时试图解决问题,我已经求助于此处

有人可以向我展示向我的小组课程中的每个按钮添加动作的最佳方式。

这是我到目前为止所拥有的。

import java.awt.event.ActionListener;
import java.util.ArrayList;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class theClass extends JPanel implements ActionListener{

private JButton S, j ,O

@Override
public void actionPerformed(ActionEvent arg0) {



}

}

2 个答案:

答案 0 :(得分:2)

首先,您需要将ActionListener添加到JButton中 - 就像这样:

Soda.addActionListener(this);

然后你必须声明点击该怎么做:

@Override
public void actionPerformed(ActionEvent arg0) {
  if(arg0.getSource().equals(Soda)){
    //Do sth...
  }// And so on using else if.
}

答案 1 :(得分:1)

有多种不同的方法可以做到这一点,从目前的最简单方法是添加这一行:

Space.addActionListener(this);

您可以为每个按钮添加该行,然后您可以在actionPerformed方法中使用以下代码:

if (arg0.getSource() == Space) {
    // do stuff for click on space
}
else if (arg0.getSource() == Soda) {
    // do stuff for click on soda...
}

一般建议是根据Java编码约定,将变量名称(Soda,Space,AddBevarages ...)保留为小写的开头字母。

完成代码并按照您希望的方式运行后,您可能希望在Code Review上发布问题,并询问有关如何清理和改进代码的建议。但第一步始终使其首先工作