MouseWheelListener不起作用 - Java

时间:2016-01-30 23:50:43

标签: java swing

我试图抓住鼠标滚轮事件但没有成功。这是我的主要课程:

import java.awt.Dimension;
import javax.swing.JFrame;

public class Main extends JFrame {

    public Main() {
        Panel pan = new Panel();
        add(pan);
    }



    public static void main(String[] args) {

        Main wnd = new Main(); 

        wnd.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        wnd.setPreferredSize(new Dimension(500, 500));
        wnd.pack();
        wnd.setVisible(true);

    }

}

这是实现鼠标滚轮监听器的JPanel类:

import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;

import javax.swing.JPanel;

public class Panel extends JPanel implements MouseWheelListener {

    public Panel() {
        // TODO Auto-generated constructor stub
    }

    @Override
    public void mouseWheelMoved(MouseWheelEvent e) {
        System.out.println("scrolled");

    }

}

当JFrame打开时,滚动鼠标滚轮时没有任何事件。我做错了什么?

1 个答案:

答案 0 :(得分:0)

好的,感谢我解决的评论。我添加了这一行:

addMouseWheelListener(this);

在Panel的构造函数中。