我想显示一个动画箭头形状按钮。
为了绘制它,我创建了一个继承QGraphicsObject
并使用该类的QPainterPath
类。
我将它绘制在 a 中QGraphicsScene
并使用geometry
在 MyArrow 类中重新定义的属性对其进行动画处理。
您可以在这里找到所有代码:https ://github.com/TaiZzZ/arrowAnimation
我的问题如下:
箭头动画(意味着它向右移动并返回)但在移动时保持绘制。你知道为什么吗?
Ps:我使用QState Machine有相同的行为,所以我猜这个问题仅来自我绘制箭头的方式。
我尝试了两种不同的方法:
将贝塞尔曲线更改为直线,并不能解决问题。
我没有画路径,而是画了一个矩形(the
boundingRect()
)(所以我只改变了drawPath(path)
),它可以工作
总而言之,该错误来自QPainterPath ...但是为什么呢?
编辑 :
这里有图片来说明我的问题:
请注意,它不再是抗锯齿的...