如何拥有默认和自定义 wheelEvent

How to have default and custom wheelEvent

我有这个函数可以覆盖 wheelEvent 的默认行为(更改 QTextEdit 中的字体大小,表现得像缩放 in/out),但由于 class 是继承的从 QTextEdit 我失去了默认的滚轮行为,即当鼠标在其中的任何位置时 滚动

所以我的问题是:如何让滚轮事件正常运行,以及如何让 Ctrl + 滚轮事件正常运行 "something_else"。

注意:使用 Ctrl 修饰符调用的函数已创建 我只是不知道如何将其与正常行为结合起来。

 def wheelEvent(self, event):

        if (event.modifiers() & QtCore.Qt.ControlModifier):
            self.bindWheel(event)

        else:
            pass

您可以调用 QTextEdit super class 的默认实现。假设您使用的是 Python 3:

def wheelEvent(self, event):
    if (event.modifiers() & QtCore.Qt.ControlModifier):
        self.bindWheel(event)
    else:
        super().wheelEvent(event)