我有一个QGraphicsView
小部件,正在用作绘图画布。
我希望能够放大ctrl+mwheel
上的鼠标光标位置。就我的代码而言,它只是滚动到画布中心,而不是光标位置。看来翻译逻辑是错误的,但我不知道怎么做:
def zoomCanvas(self,event):
zoomInFactor = 1.25
zoomOutFactor = 1 / zoomInFactor
oldPos = event.scenePos()
if event.delta() > 0:
zoomFactor = zoomInFactor
else:
zoomFactor = zoomOutFactor
self.graphicsView.scale(zoomFactor,zoomFactor)
newPos = event.scenePos()
delta = newPos - oldPos
self.graphicsView.translate(delta.x(),delta.y())