QTimeLine 时间轴类 实现动画
2015-06-25 13:47
483 查看
QTimeLine 是一个提供了控制动画的时间轴的类。通常都是通过调用槽函数来控制动画的显示。
QTimeLine在构造函数中,你可以传递一个毫秒级的参数,设定动画的运行时间。如:
timeline1 = new QTimeLine(1000);
然后你可以设置该动画设置多少帧,如:
timeline1->setFrameRange(0,100);
这样表示动画分为100帧,然后每帧刷新的时候会产生一个信号,frameChanged(),这样,你就可以通过链接你的槽函数做你想做的事情:
connect(timeline1,SIGNAL(frameChanged(int)),SLOT(SLOTTimerMove1()));
最后一切准备就绪之后,调用start函数:
timeLine->start();
这样QTimeLine进入Running状态,并且每个一段时间发送一个frameChanged信号,这段时间间隔我们可以通过下面这个函数来设置:
timeline->setCurveShape(QTimeLine::LinearCurve);
函数的参数表示 信号frameChanged以线性的方式发送,当然还有其他的选项:
当动画结束时,QTimeLine进入 NotRunning 状态,同时发送finished()信号。当然你也可以随时调试stop()函数来结束动画。
QTimeLine在构造函数中,你可以传递一个毫秒级的参数,设定动画的运行时间。如:
timeline1 = new QTimeLine(1000);
然后你可以设置该动画设置多少帧,如:
timeline1->setFrameRange(0,100);
这样表示动画分为100帧,然后每帧刷新的时候会产生一个信号,frameChanged(),这样,你就可以通过链接你的槽函数做你想做的事情:
connect(timeline1,SIGNAL(frameChanged(int)),SLOT(SLOTTimerMove1()));
最后一切准备就绪之后,调用start函数:
timeLine->start();
这样QTimeLine进入Running状态,并且每个一段时间发送一个frameChanged信号,这段时间间隔我们可以通过下面这个函数来设置:
timeline->setCurveShape(QTimeLine::LinearCurve);
函数的参数表示 信号frameChanged以线性的方式发送,当然还有其他的选项:
Constant | Value | Description |
---|---|---|
QTimeLine::EaseInCurve | 0 | The value starts growing slowly, then increases in speed.先慢后快 |
QTimeLine::EaseOutCurve | 1 | The value starts growing steadily, then ends slowly.先匀加速,后减速 |
QTimeLine::EaseInOutCurve | 2 | The value starts growing slowly, then runs steadily, then grows slowly again.先慢,中间稳定,最后慢 |
QTimeLine::LinearCurve | 3 | The value grows linearly (e.g., if the duration is 1000 ms, the value at time 500 ms is 0.5).匀速的 |
QTimeLine::SineCurve | 4 | The value grows sinusoidally.正选曲线式 |
QTimeLine::CosineCurve | 5 | The value grows cosinusoidally.余弦曲线式 |
相关文章推荐
- qt 实现停靠窗口 效果
- [Qt教程] 第2篇 在Ubuntu14.04上创建Qt 5.4.0开发环境
- 在QTreeWidget中删除QTreeWidgetItem
- Qt常用技能总结
- 用vs创建Qt form并和对应的form类关联
- Ubuntu 14.10 编译 qt4.8.6
- Qt QScrollBar qss 美化样例
- qt 获取 xml
- qt5 不同窗口的信息传递
- 与 QWidget 有关的 Qt 可视化组件的继承关系图
- QT和MFC比较
- qt状态机和动画框架
- QT的动画框架 概述
- QTP 10和QTP 11 破解方法
- cmake编译QT5串口通信
- Qt常用快捷键
- QTP 11.5改名为 UFT
- 如何实现QT程序开机自启动
- Qt程序的UAC权限问题(转载)
- 详细,Qt Creator快捷键大全,附快捷键配置方法