注:本来用这种方法显示gif动画是没有问题的。
问题:如下方法,槽函数startGif()如下,点击按钮无法出现gif动画
分析:
gif动画资源确实是加载进来了,但是在执行movie.start()时,整个资源就已经消失了,所以无法显示动画。要使资源长期存在需要用到c中的修饰符: static。
1 void showGif::startGif()
2 {
3 QMovie movie("sa1.gif");
4 startGif_button->setText("......");
5 showGif_label->setMovie(&movie);
6 movie.start();
7 }
问题 效果:
这里的static不仅使资源长期存在,能够显示gif动画,而且提高了效率,只用加载一次gif资源即可。
1 void showGif::startGif()
2 {
3 static QMovie movie("sa1.gif");
4 startGif_button->setText("......");
5 showGif_label->setMovie(&movie);
6 movie.start();
7 }
解决 效果:
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
2020-05-22 Qt 错误:QMainWindow: No such file or directory 解决方法
2020-05-22 Qt 错误:QtGui/QApplication在Qt5没有这个文件