ui.ProgressBar.setValue(45); //45% ui.ProgressBar.setMin(0); ui.ProgressBar.setMax(255);
0到100分为255份,值为215时,进度条为100/255*215 = 84%
点击主界面弹出进度条QProgressDialog
常用功能:
setWindowFlags(Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint); //不显示进度条上最小化,最大化,关闭 setWindowModality(Qt::ApplicationModal);//进度条读到头时自动关闭 progress.setCancelButton(false);//将进度条中的取消按键设为false,不显示取消按键 //如果进度条运行的时间小于5,进度条就不会显示,不设置默认是4S progressDlg->setMinimumDuration(5); //进度条显示一直加载过程: m_pProgressBar->setMinimum(0); // 最小值 m_pProgressBar->setMaximum(0); // 最大值
注意:
主线程有死循环的话需要在死循环设置QCoreApplication::processEvents();防止界面假死。
进度条不断设值100就会闪,保证到100的时候就退出。