我从Qt4升级到Qt5 (PyQt,具体来说)和QWheelEvent为我打破了-它返回空pixelDelta(),但阶段是在2(默认)。我使用的是Win 7,所以关于阶段的警告不应该适用于我。当我运行这段代码时:
from PyQt5 import QtWidgets
class Q(QtWidgets.QLabel):
def wheelEvent(self, event):
print(event.pixelDelta())
app = QtWidgets.QApplication([])
w = Q()
w.show()
app.exec_()
滚动打印'PyQt5.QtCore.QPoint()'没有坐标。我能做什么?
From Qt5 docs for QWheelEvent:
有两种方法可以读取wheel事件增量:angleDelta()返回车轮角度的delta。这个值总是被提供的。pixelDelta()返回以屏幕像素为单位的增量,可在具有高分辨率触控板的平台,如OS x。
Qt4中没有pixelData
。它只有delta,与之对应的Qt5方法是angleDelta。