前端之家收集整理的这篇文章主要介绍了
c – Qt MouseMoveEvent仅在按下鼠标按钮时触发,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我这里有一个奇怪的问题.
我正在开发一个应用程序,在我的一个类中,我正在监视我的鼠标事件.
奇怪的是,如果按下任何鼠标按钮,我的鼠标移动事件将被调用.
我甚至没有过滤方法中的任何按钮按下;除非我点击这个对象本身(正在监视它的对象),否则该方法本身甚至不会被调用.
通常会导致此类错误发生的原因是什么?
我不确定它是否相关,但我有两个不同的东西监视我的鼠标输入:1)主程序监视全局鼠标坐标,2)我的程序中的一个对象监视自身内的鼠标坐标.
编辑
所以问题必须是因为当人们沿着屏幕拖动光标时,通常会使用鼠标移动事件吗?
我不需要它的原因是因为我正在构建各种自定义上下文菜单,我需要知道项目何时悬停.
事实证明,我没有真正设置我班级中的所有
内容来启用鼠标跟踪.
我不知何故认为如果类本身被设置为启用它,我不需要将它设置为所有子对象,但现在我看到它根本没有任何意义.
所以只是为了澄清我的解决方案:
我需要跟踪光标位置所需的项目
setMouseTracking(true);
原文链接:https://www.f2er.com/c/110746.html