QTimeLine学习

转载 2015年11月20日 23:12:14

QTimeLine 是一个提供了控制动画的时间轴的类。通常都是通过调用槽函数来控制动画的显示。

         QTimeLine在构造函数中,你可以传递一个毫秒级的参数,设定动画的运行时间。如:

[html] view plaincopy
  1. timeline1 = new QTimeLine(1000);  

然后你可以设置该动画设置多少帧,如:

[html] view plaincopy
  1. timeline1->setFrameRange(0,100);  

这样表示动画分为100帧,然后每帧刷新的时候会产生一个信号,frameChanged(),这样,你就可以通过链接你的槽函数做你想做的事情:

[html] view plaincopy
  1. connect(timeline1,SIGNAL(frameChanged(int)),SLOT(SLOTTimerMove1()));  

最后一切准备就绪之后,调用start函数:

[html] view plaincopy
  1. timeLine->start();  

这样QTimeLine进入Running状态,并且每个一段时间发送一个frameChanged信号,这段时间间隔我们可以通过下面这个函数来设置:
[html] view plaincopy
  1. 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.余弦曲线式
当动画结束时,QTimeLine进入 NotRunning 状态,同时发送finished()信号。当然你也可以随时调试stop()函数来结束动画。


本人写了一个小小的事例代码可供下载:http://download.csdn.net/detail/wswxfwps/6197397




from:  http://blog.csdn.net/wswxfwps/article/details/10915541



深入浅出理解QTimeLine类

网上找了下QTimeLIne类的介绍,要么就是代码一贴自己看去,要么就是说不到重点,正巧自己项目遇到这个类,在这里写一下,给需要的同学看下。     因为我最近需要有动画方面配合时间间隔触发...
  • imxiangzi
  • imxiangzi
  • 2015年11月20日 23:10
  • 432

QTimeLine

Qt动画效果的幕后英雄:QTimeLine” 其实动画的本质就是在每一定时间间隔内显示一帧图像,当这个间隔较短的时候人眼就感觉不出来了,觉得看到的是连续的影像。Qt为开发动画效果的人员提供了一个很好...
  • zhx6044
  • zhx6044
  • 2013年04月18日 16:43
  • 1370

QTimeLine学习

QTimeLine 是一个提供了控制动画的时间轴的类。通常都是通过调用槽函数来控制动画的显示。          QTimeLine在构造函数中,你可以传递一个毫秒级的参数,设定动画的运行时间。...
  • imxiangzi
  • imxiangzi
  • 2015年11月20日 23:12
  • 320

Qt动画效果的幕后英雄:QTimeLine

其实动画的本质就是在每一定时间间隔内显示一帧图像,当这个间隔较短的时候人眼就感觉不出来了,觉得看到的是连续的影像。Qt为开发动画效果的人员提供了一个很好的时间控制类QTimeLine.     QT...
  • imxiangzi
  • imxiangzi
  • 2015年11月20日 23:11
  • 386

QT学习笔记-24.使用QTimeLine

一个简单的代码如下: #include  #include #include int main(int argc, char *argv[]) { QApplication ...
  • imxiangzi
  • imxiangzi
  • 2015年11月20日 23:10
  • 1638

QTimeLine 时间轴类 实现动画

QTimeLine 是一个提供了控制动画的时间轴的类。通常都是通过调用槽函数来控制动画的显示。          QTimeLine在构造函数中,你可以传递一个毫秒级的参数,设定动画的运行时间。如:...
  • zhangbinsijifeng
  • zhangbinsijifeng
  • 2015年06月25日 13:47
  • 1390

Qt动画效果的幕后英雄:QTimeLine

 其实动画的本质就是在每一定时间间隔内显示一帧图像,当这个间隔较短的时候人眼就感觉不出来了,觉得看到的是连续的影像。Qt为开发动画效果的人员提供了一个很好的时间控制类QTimeLine. QTimeL...
  • cuteqt
  • cuteqt
  • 2009年06月28日 18:09
  • 7279

《Qt 实战一二三》

“我们来自Qt分享&&交流,我们来自QML分享&&交流”,不管你是笑了,还是笑了,反正我们是认真的。我们就是要找寻一种Hold不住的状态,来开始每一天的点滴分享,我们是一个有激情,有态度的部队。 但...
  • u011012932
  • u011012932
  • 2015年12月12日 18:58
  • 79235

Qt之QTimeLine窗口滑动切换效果实现

  • 2013年09月02日 15:05
  • 752KB
  • 下载

Qt之QTimeLine

QTimeLine 类提供了用于控制动画的时间轴,通常用于通过定期调用一个槽函数来动画一个 GUI 控件。相信了解动画的人对帧应该不陌生,可以把一个动画想象成由很多张静态画面组成,而每一个画面就是一帧...
  • u011012932
  • u011012932
  • 2016年11月04日 10:59
  • 3074
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:QTimeLine学习
举报原因:
原因补充:

(最多只允许输入30个字)