模态窗口阻塞程序等待后台处理结果

1.设置对话框为Qt::ApplicationModal

2.打开窗口后,启动事件循环,等待后台处理结果

bool LoginDlg::openDlg()
{
    QEventLoop loop;
    connect(ui->login_title,&ThemeTitle::sigClose,&loop,&QEventLoop::quit);
    connect(this,&LoginDlg::sigClose,&loop,&QEventLoop::quit);
    show();
    loop.exec();
 
  
    return is_verify_sucess;
}

1关联窗口的关闭信号,结束事件循环;

2可以设置一个QTimer,指定等待时间,将timeout()信号与QEventLoop::quit()槽关联;


你可能感兴趣的:(QT)