为什么mouseDragged只在使用MouseMotionAdapter
时收到-events 而不是在使用时收到MouseAdapter?
Java有两个用于接收鼠标事件的抽象适配器类;
MouseAdapter和MouseMotionAdapter.
这两个类有mouseDragged(MouseEvent e)-方法,但
一个在MouseAdapter似乎不工作; mouseDragged- 事件
永远不会通过这个.
这两个类都实现了MouseMotionListener其γ-接口
定义了mouseDragged-event,所以我不明白为什么它
不能在他们两人的正常工作.
以下是显示此问题的示例代码:
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import javax.swing.JFrame;
public class SwingApp extends JFrame
{
public SwingApp()
{
// No mouseDragged-event is received when using this :
this.addMouseListener(new mouseEventHandler());
// This works correct (when uncommented, of course) :
// this.addMouseMotionListener(new mouseMovedEventHandler());
setBounds(400,200, 550,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setVisible(true);
}
public static …Run Code Online (Sandbox Code Playgroud)