如果我向addMouseListener
注册了一个组件,然后将其传递给新的MouseAdapter
由于我必须使用addMouseMotionListener
,所以不会生成motions事件。
相反,如果我使用addMouseMotionListener
和MouseAdapter
,则无法使用点击事件ecc。
所以我真的不明白为什么MouseAdapter
也实现了MouseMotionListener
和MouseWheelListener
...
它只会造成混乱!
最佳答案
因为通过这种方式,您可以完全按照自己的意愿做:在同一个侦听器类中侦听运动和单击事件:
MouseAdapter adapter = new MouseAdapter ({
// Override here all the methods you need
});
widget.addMouseListener(adapter);
widget.addMouseMotionListener(adapter);
这样,您的适配器将同时收到Motion和click事件的通知。