我在实现 ActionListener 时遇到了麻烦。在我的类 addbutton 它不会让我屁股 ActionListener。我想要做的是显示两个 JFrame 并可以单击作为按钮。对于按钮单击操作,我有所有其他工作期望。该按钮出现,但单击它什么也不做,所以我添加了一个 ActionListener 并且它不是为我的方法定义的。我做错了什么,我能做些什么来解决它。谢谢你。
import java.awt.event.ActionEvent;
import javax.swing.Action;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JButton;
@SuppressWarnings("serial")
public class PictureTest extends JFrame {
public static class addbutton extends JFrame implements ActionListener{
public addbutton() {
JFrame button = new JFrame();
JButton take = new JButton("Take Please");
button.add(take);
add(take);
button.addActionListener(this); //This line is the issue
}
public void actionPerformed(ActionEvent e) {
e.getSource();
System.out.println("Here");
}
}
public PictureTest() {
ImageIcon image = new ImageIcon("c:/Vending/pepsi.jpg");
JLabel label = new JLabel(image);
JPanel soda = new JPanel();
soda.add(label);
add(soda);
}
public static void main(String[] args) {
PictureTest frame = new PictureTest();
addbutton button = new addbutton();
frame.setSize(250, 450);
frame.setTitle("Pepsi");
frame.setLocation(200, 100);
frame.setUndecorated(true);
button.setSize(105, 25);
button.setLocation(275, 550);
button.setUndecorated(true);
button.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
button.setVisible(true);
}
}