Как иметь по умолчанию и пользовательские wheelEvent - PullRequest
0 голосов
/ 09 мая 2018

У меня есть эта функция, которая перезаписывает поведение по умолчанию wheelEvent (изменяет размеры шрифта в QTextEdit, ведет себя как увеличение / уменьшение масштаба), но так как этот класс наследуется от QTextEdit, я потерял поведение колеса по умолчанию, которое прокрутка , когда мышь находится внутри нее.

Итак, мой вопрос: как вести себя нормально для события колеса и «что-то» для события Ctrl + wheel.

Примечание: сделана функция, вызываемая с модификатором Ctrl. Я просто не знаю, как совместить ее с обычным поведением.

 def wheelEvent(self, event):

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

        else:
            pass

1 Ответ

0 голосов
/ 09 мая 2018

Вы можете вызвать реализацию по умолчанию вашего QTextEdit суперкласса. Предполагая, что вы используете Python 3:

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