我正在尝试撰写包含Mouse
和MouseListener
的{{1}}课程(实施MouseMotionListener
和mousePressed()
)。我希望能够在鼠标停止时检测鼠标移动。我可以单独检测每个,但不能同时检测。例如:
mouseMoved()
你应该看到,"按下"和"感动"两个都打印出来,但是一旦按下鼠标,"移动"在释放鼠标之前不会打印。我怎么做才能做到这一点?
答案 0 :(得分:4)
只有在没有按下任何按钮时才会触发void mouseDragged(MouseEvent e)
在组件上按下鼠标按钮然后拖动时调用。
void mouseMoved(MouseEvent e)
当鼠标光标移动到组件上但没有按下按钮时调用。
mouseMoved
个事件。
答案 1 :(得分:2)
正如您所看到的那样,“Pressed”和“Moved”都被打印出来,但是一旦按下鼠标,只有释放鼠标才会打印“Moved”。
按下鼠标时,您需要处理的事件是mouseDragged
事件。