我试图抓住鼠标滚轮事件但没有成功。这是我的主要课程:
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打开时,滚动鼠标滚轮时没有任何事件。我做错了什么?
答案 0 :(得分:0)
好的,感谢我解决的评论。我添加了这一行:
addMouseWheelListener(this);
在Panel的构造函数中。