• 2478阅读
  • 0回复

[提问]show()显示的条件是什么? [复制链接]

上一主题 下一主题
离线swdymr
 

只看楼主 正序阅读 楼主  发表于: 2017-08-11
最近碰到一个问题Dialog使用show()函数一直不显示出来,例如如下代码,在循环打印i的过程中一直显示不出来,直到循环结束,回到主函数碰到exec才显示出来。但使用md->exec()就能显示出来。有哪位大神能讲解下其中的原因吗?窗口必须遇到exec才能显示出来?谢谢。


MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent),
ui(new Ui::MainWindow)
{
      ui->setupUi(this);
      MyDialog* md = new MyDialog();
      md->setModal(true);
      md->show();
      int i = 0;
      while(i < 10000000)
     {
         qDebug()<<i++;
     }
}


int main(int argc, char *argv[])
{
      QApplication a(argc, argv);
      MainWindow w;
      w.show();
      return a.exec();
}
快速回复
限100 字节
 
上一个 下一个