Методы MouseListener переопределены, но компилятор говорит иначе?

        JTextArea messageDisplayArea=new JTextArea();
        messageDisplayArea.addMouseListener(new MouseListener(){
            public void mouseEntered(MouseEvent m){
                JOptionPane.showMessageDialog(null,"a");
            }
        });
        messageDisplayArea.addMouseListener(new MouseListener(){
            public void mouseExited(MouseEvent m){

            }
        });
        messageDisplayArea.addMouseListener(new MouseListener(){
            public void mouseClicked(MouseEvent m){

            }
        });
        messageDisplayArea.addMouseListener(new MouseListener(){
            public void mousePressed(MouseEvent m){

            }
        });
        messageDisplayArea.addMouseListener(new MouseListener(){
            public void mouseReleased(MouseEvent m){

            }
        });

Это часть моего кода, я импортировал java.awt.* И java.awt.event.* И javax.swing.*, Но НЕ реализовал интерфейс MouseListener. Я переопределил все методы из интерфейса MouseListener, но компилятор выдает 5 ошибок, все говорят, что класс не является абстрактным и не переопределяет абстрактный метод в MouseListener. Что я делаю неправильно?

1 ответ

Решение

Попробуйте добавить @Override.

С этим кодом вам не нужно реализовывать MouseListener.

Также вместо new Mouselistener() использование new MouseAdapter()

Образец кода:

    JTextArea textArea = new JTextArea();
    textArea.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseClicked(MouseEvent e) {
        }
        @Override
        public void mouseEntered(MouseEvent e) {
        }
        @Override
        public void mouseExited(MouseEvent e) {
        }
        @Override
        public void mousePressed(MouseEvent e) {
        }
        @Override
        public void mouseReleased(MouseEvent e) {
        }
    });

Другие вопросы по тегам