在Qt开发中经常会使用到一个等待界面,很巧,这周开发就遇到了,思索了半天,还是问问度娘,网上的答案很乱。浅浅记录一下
首先我制作了一个按钮,按下按钮的时候会有一个弹窗选择,如果选择“YES”就往下执行等待画面,在等待中我得在Linux下打包指定的文件到指定目录。这里我用的是QProcess来操作。
打包用到的命令:tar -czf 路径/文件名.tgz 目标文件
现在我们来制作一个简单的UI界面


UI制作Ok,只需要把gif图片Setmovie到QLabel上就行,封装起来随时调用。
QMovie *pMovie = new QMovie(":/image/Image/loading.gif");ui->loadingLab->setFixedSize(50, 50);//调整大小放进Gifui->loadingLab->setScaledContents(true);//自适应窗口大小ui->loadingLab->setMovie(pMovie);//将动画设置到QLabel中pMovie->start();//启动setWindowModality(Qt::ApplicationModal);//模态化setWindowFlags(Qt:

文章讲述了在Qt环境下,如何创建一个等待界面并在用户选择后执行QProcess进行文件打包。作者使用QProcess的start()方法异步执行命令,同时展示了一个加载动画的等待界面,并通过waitForFinished(-1)确保命令执行完成。遇到的问题是界面卡死,解决方案是将QProcess调用放到单独的线程中,通过QtConcurrent::run解决。
&spm=1001.2101.3001.5002&articleId=128609083&d=1&t=3&u=44809a72c2674e96b43ad600aaa87f58)
6909

被折叠的 条评论
为什么被折叠?



