Задача - отслеживать мышь у множества QWidget-ов (вешается декоратор на mouseMoveEvent и делает свои дела). Проблема в том, что ивент срабатывает только над голой формой. А есть такие виджеты, где какой-то элемент занимает всю форму, поэтому ивент не работает вообще. Насколько я понял, единственный вариант - ловить eventFilter. Но он не работает совсем. Так каким способом ловить мышь? Что я делаю не так? Вот пример с eventFilter, который не работает:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.QtCore import QObject
class MyFilter(QObject):
def eventFilter(self, obj, event):
print(str((obj, event)))
return False
class MainWidget(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.installEventFilter(MyFilter())
app = QApplication(sys.argv)
main = MainWidget()
main.show()
sys.exit(app.exec())