У меня есть виджет QGraphicsView с установленным QGraphicsScene. Я хочу обнаружить событие mouseButtonPressed в любом месте окна моего приложения за пределами виджета QGraphicsView.
Я попытался установить eventFilter в центральный виджет приложения следующим образом:
self.centralwidget.installEventFilter(self)
Мой виджет QGraphicsView - self.viewStartImg. В моем методе eventFilter у меня есть следующее:
def eventFilter(self, obj, event):
if obj != self.viewStartImg and event.type() == QEvent.MouseButtonPress:
print('Outside the QGraphicsView')
В моем приложении, когда я щелкаю внутри QGraphicsView, я все равно получаю распечатку «За пределами QGraphicsView». Я считаю, что это происходит потому, что QGraphicsView является дочерним элементом centralWidget, но я не уверен.
Любой альтернативный метод достижения этой функциональности высоко ценится!