Qt/PyQt 重写mouseMoveEvent事件 实时监测鼠标移动

bool mouseTracking 属性是窗口部件跟踪鼠标监控。
如果重写了mouseMoveEvent事件就需要使用setMouseTracking(true)才能实时监测鼠标,如果不加这句,就会出现只能获取mousePress的移动座标。

上面这个在QWidget中是使用没有问题,但是在QMainWindow中使用就依然无法捕获,解决方案就是:

self.setCentralWidget(self.main_widget)
self.main_widget.setMouseTracking(True)
self.setMouseTracking(True)

先把QMainWindow的CentralWidget使用setMouseTracking(true)开启移动监控,然后再把QMainWindow的setMouseTracking(true)开启监控。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章