【问题标题】:View.Listener is not abstract and does not override abstract method actionPerformed(ActionEvent) in ActionListenerView.Listener 不是抽象的,不会覆盖 ActionListener 中的抽象方法 actionPerformed(ActionEvent)
【发布时间】:2016-03-14 23:24:59
【问题描述】:
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)

我尝试将其实现为匿名类并得到相同的错误。我想不明白。

【问题讨论】:

    标签: java button interface overriding actionlistener


    【解决方案1】:

    我依赖自动导入,但它为 ActionEvent 导入了错误的库。

    import javafx.event.ActionEvent;
    

    我需要导入:

    java.awt.event.ActionEvent;
    

    我的错。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      • 1970-01-01
      • 2013-09-19
      • 1970-01-01
      • 1970-01-01
      • 2014-06-20
      • 2014-01-16
      相关资源
      最近更新 更多