pyqt5 mouseMoveEvent bug

June 10, 2014

在没有鼠标按键的情况下,会接收不到 mouseMoveEvent,相当困扰。OD 跟了一小时,毫无进展

省略掉过程

结果当然是解决了

class EventDispatcher(QObject):
    def eventFilter(self, Receiver, Event):
        type = Event.type()
        if type == QEvent.MouseMove and isinstance(Receiver, QWidget):
            f = None
            try:
                f = Receiver.mouseMoveEvent
            except AttributeError:
                pass

            if callable(f):
                f(Event)
                return False

        return super().eventFilter(Receiver, Event)


Dispatcher = EventDispatcher()
app = QApplication(sys.argv)
app.installEventFilter(Dispatcher)

搞定……真是好 SB 的 BUG(?)

Rebuild Explorer icon cache

Published on June 28, 2016

VS 2015 编译 PyQt

Published on December 03, 2015