检测鼠标滚动的方式

aps*_*aps 3 java swing event-handling mousewheel

MouseWheelListener 接口中只有一种方法。我需要根据鼠标是向上还是向下滚动来做不同的事情。如何实现这样的事情?仅供参考,我在 JScrollPane 中有一个 JPanel。我将使用鼠标滚轮运动来放大或缩小。

Coe*_*ect 5

mouseWheelMoved 方法采用 MouseWheelEvent 参数。该参数中有一些字段可用于确定滚动方向(请参阅MouseWheelEvent)。因此,一旦您知道轮子向哪个方向移动,您就可以决定要执行的操作。

  • 特别是 getWheelRotation() 方法。来自 Javadoc,“如果鼠标滚轮向上/远离用户旋转,则为负值,如果鼠标滚轮向下/朝向用户旋转,则为正值” (6认同)
  • 如果可能的话,这个答案会更好一些代码示例 (3认同)