当前位置: 代码迷 >> QT开发 >> 关于progressEvents()这个函数的有关问题
  详细解决方案

关于progressEvents()这个函数的有关问题

热度:42   发布时间:2016-04-25 03:47:33.0
关于progressEvents()这个函数的问题
void Widget::ProgressbuttonPressed()
{ QProgressDialog dialog("文件复制进度",("取消"),0,50000,this);
dialog.setWindowTitle("我爱你");
dialog.setWindowModality(Qt::WindowModal);
dialog.show();
for(int i=0;i<50000;i++)
{ dialog.setValue(i);
QCoreApplication::processEvents(); //就是这句
if(dialog.wasCanceled())break; } QMessageBox::information(NULL,("文件复制完成"),
("文件复制完成"));
}



如果我把那句注释掉 进度条就瞬间填满 如果没注释掉 进度条是一点一点填满的 为什么 progressEvents()这个函数有什么用



------解决方案--------------------
调用主线程的事件循环,处理队列里的事件(这里会花一点时间),然后再继续执行
  相关解决方案