对话框分为两种:1模态对话框 2非模态对话框
模态对话框就是阻塞对话框,就是你不解决掉这个对话框,谁没办法点这个对话框以外的操作的 (就平时点外面 “噔噔噔” 不让点那种样子的)
非模态就是自己弹出的对话框,我们可以不管他,继续进行当前窗口的任务。
其中模态对话框包含 应用程序级别和窗口级别 对应阻塞程度顾名思义了。
show()函数是非模态非阻塞性质的 show()的话要建立在堆上
exec()函数是模态阻塞性质的 exec()建立在堆栈上都可以 ,因为会阻塞,阻塞不会立刻在堆上释放掉
#include <QApplication>
#include <QPushButton>
#include <QDebug>
#include<QDialog>
#include<QMainWindow>
#include<QTime>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMainWindow *DialogWindow= new QMainWindow ;
DialogWindow->setWindowTitle("A TSET WINDOW"); //建一个窗口
QPushButton *buttonshow = new QPushButton; //show()非模态(非阻塞)
QPushButton *buttonexec = new QPushButton; //exec() 模态(阻塞)
QPushButton *buttonshowinstack = new QPushButton;