Qt QMOVIE应用

yj0603 2012-11-19 04:40:41
在Qt中利用QMOVIE播放GIF格式的动画,但是发现动画一直循环播放.
利用QMOVIE->loopcount()函数发现该动画返回值是 -1;
说明会一直循环下去;
请问,怎样设置可以使得动画只播放一次,或者说QMOVIE的finish信号什么时候才会触发??
谢谢~~~~
...全文
865 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lch922 2013-03-25
  • 打赏
  • 举报
回复
引用 1 楼 jinjianxinxh 的回复:
连接finished () 信号,接到这个信号后stop不就可以了吗
不行的。。。循环播放的话,是不会发finished () 信号的。 可以连接帧切换的信号frameChanged,发现播放了两次第一帧就判断播放完成。
qt初体验 2013-03-25
  • 打赏
  • 举报
回复
frameChanged 判断帧数是不是最后一个是的话就stop
__阿飞__ 2012-11-22
  • 打赏
  • 举报
回复
+1 QMovie的API: Public Slots bool jumpToNextFrame () void setPaused ( bool paused ) void setSpeed ( int percentSpeed ) void start () void stop () Signals void error ( QImageReader::ImageReaderError error ) void finished () void frameChanged ( int frameNumber ) void resized ( const QSize & size ) void started () void stateChanged ( QMovie::MovieState state ) void updated ( const QRect & rect ) 把你需要的信号跟槽绑定就ok.
引用 1 楼 jinjianxinxh 的回复:
连接finished () 信号,接到这个信号后stop不就可以了吗
jinjianxinxh 2012-11-19
  • 打赏
  • 举报
回复
连接finished () 信号,接到这个信号后stop不就可以了吗

16,817

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧