猿问

更改QTableView的滚动方向

我一直在环顾四周,但似乎找不到任何示例可以帮助我在.NET中更改滚轮的滚动方向QTableView。这是我最好的尝试。


这是我做的水平滚动:


def eventFilter(self, obj, event):

    #some of my widgets are disabled, I can simply do another if for enabled ones


    if obj and obj.isEnabled() and event.type() == QEvent.Wheel and self.shift_key:

        newEvent = QWheelEvent(obj.mapToParent(event.pos()), event.globalPos(),

                               event.delta(), event.buttons(),

                               event.modifiers(), 1)

        QApplication.instance().postEvent(obj.parent(), newEvent)

        return True


    if event.type() == QEvent.KeyPress and event.key() == Qt.Key_Shift:

        self.shift_key = True

        return True

    elif event.type() == QEvent.KeyRelease and event.key() == Qt.Key_Shift:

        self.shift_key = False

        return True


    return QObject.eventFilter(self, obj, event)

当我将鼠标悬停在标题或空白处时会出现问题,因为它不会水平滚动,并且还会显示一条错误消息


QApplication::postEvent: Unexpected null receiver


如何使用scroll+实现水平滚动shift?


潇湘沐
浏览 227回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答