答案 0 :(得分:3)
首先,您必须导入包java.awt.event。*以启用事件。在类名之后,您必须添加实现ActionListener,以便该类可以处理事件。创建按钮后,必须为每个按钮添加actionlistener。由于您还没有显示您使用的代码,因此我使用一个计算投票的简单程序作为示例,如果用户点击yesButton,则投票数增加1,如果用户点击noButton,投票将减少1。
以下是为每个按钮添加ActionListener的代码:
yesButton.addActionListener(this);
noButton.addActionListener(this);
然后编写以下代码来处理事件:
public void actionPerformed(ActionEvent e) {
JButton src = (JButton) e.getSource();
if(src.getActionCommand().equals("Yes")) {
yesCount++;
} else {
noCount++;
}
label.setText("Difference: " + (yesCount - noCount));
}
如果你有6个按钮,你需要有一个if语句然后是5"否则如果"语句而不仅仅是if和else语句。
答案 1 :(得分:0)
查看有关如何使用 ActionListeners 的Java教程:
https://docs.oracle.com/javase/tutorial/uiswing/events/actionlistener.html
这是一个简单的例子:
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Hello extends JPanel implements ActionListener {
JButton button;
public Hello() {
super(new BorderLayout());
button = new JButton("Say Hello");
button.setPreferredSize(new Dimension(180, 80));
add(button, BorderLayout.CENTER);
button.addActionListener(this); // This is how you add the listener
}
/**
* Invoked when an action occurs.
*/
public void actionPerformed(ActionEvent e) {
System.out.println("Hello world!");
}
private static void createAndShowGUI() {
JFrame frame = new JFrame("Hello");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JComponent newContentPane = new Hello();
newContentPane.setOpaque(true);
frame.setContentPane(newContentPane);
frame.pack();
frame.setVisible(true);
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
答案 2 :(得分:0)
按钮有一个名为addActionListener的方法,用于添加你可以为点击实现的动作监听器......
dummyButton = new JButton("Click Me!"); // construct a JButton
add(dummyButton); // add the button to the JFrame
dummyButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println(" TODO Auto-generated method stub");
}
});
答案 3 :(得分:0)
这很简单。
我想你有一个按钮实例,对吗?我们假设该实例名为myButton
。
您只需调用addActionListener
:
myButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// Do whatever you like here
}
});
Protip:下次您不知道要调用的方法时,只需输入实例名称和.
即可。然后,除非您没有使用IDE,否则IDE将显示您可以调用的所有方法。如果是这种情况,请下载一个。