PyQt Mouse Двойной щелчок на ярлыке
Я никогда раньше не использовал фильтрацию событий, поэтому из загруженного примера (который работал) я добавил в свой код следующее:-
def eventFilter(self, source, event):
if (event.type() == QtCore.QEvent.MouseMove and
source is self.label):
pos = event.pos()
print('mouse move: (%d, %d)' % (pos.x(), pos.y()))
if (event.type() == QtCore.QEvent.MouseButtonDblClick and
source is self.label):
print('Double click')
return QtGui.QWidget.eventFilter(self, source, event)
Я использую QTDesigner для создания главного окна следующим образом
class View(QtGui.QMainWindow, form_class): # any super class is okay
def __init__(self, router, parent=None, job=None):
super(View, self).__init__(parent)
self.setupUi(self)
Затем добавьте этот код, чтобы реализовать обнаружение двойного щелчка мышью на ярлыке.
self.label.setMouseTracking(True)
self.label.installEventFilter(self)
Код отлично работает на примере, который я скачал, но не в моем приложении.
Есть ли что-то об использовании QTDesigner для создания окна, которое делает код недействительным?
Большинство других примеров, которые я обнаружил, касалось событий мыши, а не события двойного щелчка.