在QT中查找当前鼠标位置

dfe*_*r88 2 c++ qt qt4

这是我第一次尝试编写QT应用程序,我只是想了解它是如何工作的.我的目标是拥有一个400x400的小部件,它可以在鼠标悬停在鼠标上时知道鼠标的确切位置.例如,如果鼠标悬停在左上角,则位置可能是10,10(或类似的东西).如果鼠标位于右下角,则可能是390,390.

最终,这些坐标将显示在主窗口的标签中,但这应该是微不足道的.我坚持实际获取坐标.有任何想法吗?

San*_*nto 5

对于小部件,您必须启用鼠标跟踪.

然后,您可以安装事件过滤器,关注鼠标事件并查找移动事件,也可以继承QWidget并覆盖鼠标事件,查找鼠标移动事件.

http://doc.qt.io/qt-4.8/qwidget.html#mouseTracking-prop

http://doc.qt.io/qt-4.8/eventsandfilters.html

http://doc.qt.io/qt-4.8/qmouseevent.html


Zso*_*ari 5

如果您遇到不需要实际跟踪的情况,只需在此时定位,您可以使用QCursor::pos().