主要是用到QMovie类
实现在事件触发时开启动画播放效果(需要注意的是,这个动画播放默认是循环播放的,如果不做特殊处理动画会一直播放)
1 QMovie *movie = new QMovie("aaa.gif");
2 ui->movieLabel->setMovie(movie);
3 movie->start(); //启动gif图片
4 //movie->stop(); //停止gif图片的播放
QMovie类简介:
1、指定播放的文件
利用构造函数在初始化的时候,指定要播放的文件;
利用setFileName(QString)来指定播放的gif文件
2、QMovie的一些常见属性设置
- gif文件的帧数 int frameCount(); 主要是获取gif文件的总帧数;可以作为停止判断条件
- gif文件播放过程中的当前帧数: int currentFrameNumber() const ; 可以调用这个接口来获取,也可以管理movie的信号frameChanged(int)来获取;
- 获取gif文件当前的播放速度: int speed() const;
- 设置gif文件当前的播放速度: void setSpeed(int percentSpeed); 要注意的是参数是一个百分整数,即最后的播放速度 = 参数值 * 0.01;如果要设置为2倍播放速度,那么参数应该是 200;
- 获取当前播放的动画的文件路径 QString fileName() const;
- 获取当前播放的动画的循环次数 int loopCount() const; 如果动画的播放属性是一直循环播放,则返回的循环次数就是一个 -1 值;
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)