def wheelEvent(self, event: QtGui.QWheelEvent):
if event.modifiers() & QtCore.Qt.ShiftModifier:
delta = event.angleDelta()
if delta.y() > 0:
scale = self.zoom_in
else:
scale = 1 / self.zoom_in
# Set Anchors
self.setResizeAnchor(QtWidgets.QGraphicsView.NoAnchor)
self.setTransformationAnchor(QtWidgets.QGraphicsView.NoAnchor)
cur_pos = self.mapToScene(event.pos())
self.scale(scale, scale)
new_pos = self.mapToScene(event.pos())
delta_zoomed = new_pos - cur_pos
self.translate(delta_zoomed.x(), delta_zoomed.y())
event.accept()
return
return super(VQVivFuncGraphCanvas, self).wheelEvent(event)
评论列表
文章目录