QT开发中文网

QPropertyAnimation

QPropertyAnimation 是 Qt 中一个用于控制 QObject 对象属性的动画类,它可以实现对目标对象进行平滑过渡的动画效果。QPropertyAnimation 可以控制任何继承自 QObject 的对象的属性,包括 QWidget、QGraphicsItem 等。

使用 QPropertyAnimation 需要经过以下步骤:

  1. 创建 QPropertyAnimation 对象,指定动画的目标对象和属性。
QPropertyAnimation *animation = new QPropertyAnimation(targetObj, "propertyName");
  1. 设置动画的起始值和结束值,可以使用 QVariant 类型来设置动画值,也可以使用指定类型的 setStartValue() 和 setEndValue() 函数。
animation->setStartValue(QVariant(fromValue));
animation->setEndValue(QVariant(toValue));
  1. 设置动画的时长和曲线。
animation->setDuration(durationMs);
animation->setEasingCurve(curveType);
  1. 开始动画。
animation->start();

例如,下面是一个将 QWidget 从原位置移动到目标位置的示例代码:

QPropertyAnimation *animation = new QPropertyAnimation(widget, "pos");
animation->setStartValue(QPoint(0, 0));
animation->setEndValue(QPoint(100, 100));
animation->setDuration(1000);
animation->setEasingCurve(QEasingCurve::OutQuad);
animation->start();

这个代码会将 widget 控件从左上角移动到 (100, 100) 的位置,动画时长为 1 秒,并使用 OutQuad 缓动曲线。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://qt.0voice.com/?id=694

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?