import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionListener;
import java.util.LinkedList;
import javafx.event.ActionEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class View extends JFrame{
JTextField tField = new JTextField(10);
JButton sortButton = new JButton("Sort");
JButton shuffleButton = new JButton("Shuffle");
JButton reverseButton = new JButton("Reverse");
JTextArea tArea = new JTextArea();
JLabel label = new JLabel("Enter a number: ");
JPanel upperPanel = new JPanel();
JPanel buttonPanel = new JPanel();
public View(){
setTitle("Exercise 22.2");
setSize(500,150);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setLayout(new BorderLayout());
sortButton.addActionListener(new Listener());
upperPanel.setLayout(new FlowLayout(FlowLayout.CENTER));
upperPanel.add(label);
upperPanel.add(tField);
buttonPanel.add(sortButton);
buttonPanel.add(shuffleButton);
buttonPanel.add(reverseButton);
add(upperPanel, BorderLayout.NORTH);
add(tArea, BorderLayout.CENTER);
add(buttonPanel, BorderLayout.SOUTH);
}
/*Getting error here!*/
public class Listener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e)
{
System.out.println("Hello");
}
}
}
我试图创建一个实现ActionListener的类,我可以将类注册到我的按钮。
我得到了: View.Listener不是抽象的,并且不会覆盖ActionListener中的抽象方法actionPerformed(ActionEvent)
我尝试将其作为匿名类实现并获得相同的错误。我想不明白。
答案 0 :(得分:0)
我依赖自动导入,并为ActionEvent导入了错误的库。
import javafx.event.ActionEvent;
我需要导入:
java.awt.event.ActionEvent;
我的坏。