pyside2之QGraphicsView使用鼠标中键缩放
参考:原文章链接
重写QtWidgets中的wheelEvent()函数
class GraphicsView(QGraphicsView):
#继承父类传递的参数
def __init__(self,parent=None):
super().__init__(parent)
#重写wheelEvent函数,event继承父类
def wheelEvent(self, event):
self.scaleView(math.pow(2.0, -event.angleDelta().y() / 240.0))
def scaleView(self, scaleFactor):
factor = self.transform().scale(scaleFactor, scaleFactor).mapRect(QRectF(0, 0, 1, 1)).width()
if factor < 0.2 or factor > 100:
return
self.scale(scaleFactor, scaleFactor)
该程序段可直接放在界面UI生成的python文件下