最简单进度条对话框:
https://blog.csdn.net/hb_programmer/article/details/81099535
实现效果
优化一下UI:
//对话框正文,取消按钮名称,进度条范围,父窗口
Dilog = new QProgressDialog(对话框名称," ",0,最大范围,this);
Dilog->setWindowFlags(Qt::FramelessWindowHint);//无边框
Dilog->setWindowModality(Qt::WindowModal);//模态对话框
//少于设置时间就不显示进度条对话框,设置为0始终显示对话框
Dilog->setMinimumDuration(0);
Dilog->setStyleSheet("QLabel{font-family: 宋体;"
"font-weight:bold;"
"font-size:15px;"
"color: #303030;}"
"QProgressDialog{background-image: url(:/图片名称.png);}"
"QProgressBar{border: 1px solid grey;" //外边框
"border-color:rgb(128, 128, 128);" //外边框颜色
"text-align: center;" //字体对齐方式
"background: rgb(255, 255, 255);}"
"QProgressBar::chunk { border: none;"
"background: rgb(123, 199, 187);}" //进度条颜色
"QPushButton{max-width:0px;" //宽
"min-height:40px;" //高
"background-color:rgba(255,255,255,0);}" //设置按钮为透明
);
Dilog->setFixedSize(500, 200);//设置大小
Dilog->move((this->width() - Dilog->width())/2,(this->height() - Dilog->height())/2);
//显示处理框
Dilog->show();
perform函数中屏蔽Dilog->wasCanceled(),让取消按钮无效
进度条背景贴图,设置进度条样式