对话框分为
模态对话框(不可以对其他窗口进行操作)
非模态对话框(可以对其他窗口进行操作)
#include "mainwindow.h" #include "ui_mainwindow.h" #include "QDialog" #include
"QDebug" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new
Ui::MainWindow) { ui->setupUi(this);
connect(ui->actionnew,&QAction::triggered,[=](){ //模态对话框 QDialog *dlg=new
QDialog(this); dlg->resize(300,200); dlg->exec();//阻塞 qDebug()<<"模态"; }); }
MainWindow::~MainWindow() { delete ui; }
模态对话框通过
dlg->exec();//阻塞
1.阻塞到那行代码

此时运行点击新建无任何输出
2.

关闭后,会执行下面的代码,从而打印输出

二,非模态对话框
#include "mainwindow.h" #include "ui_mainwindow.h" #include "QDialog" #include
"QDebug" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new
Ui::MainWindow) { ui->setupUi(this);
connect(ui->actionnew,&QAction::triggered,[=](){ //非模态对话框 QDialog *dlg2=new
QDialog(this); dlg2->resize(300,200); dlg2->show();
dlg2->setAttribute(Qt::WA_DeleteOnClose); qDebug()<<"非模态"; }); }
MainWindow::~MainWindow() { delete ui; }
运行后

技术
©2019-2020 Toolsou All rights reserved,
字节三面远程,Java+Redis+网络+数据库+算法,轻松反杀面试官?停车场管理系统C语言10个经典小程序——小白必备!Cloud Alibabab笔记问世,全网详解仅此一份手慢无Bigtable论文笔记linux系统数据库服务器的性能调优方法论中国移动的宽带免费策略已不可持续10909米!中国奋斗者号在马里亚纳海沟成功坐底BATJ面试redis灵魂36问,你这么回答,面试官一定对你刮目相看基于springboot的文件上传