QWidget如何exec,Qdialog 和Qwidget 区别。show和exec区别

1. QT 中QDialog的显示函数有show()和exec()。


那么他们有什么区别呢?


show显示非模式对话框,控制权即刻返回给调用函数


exec显示模式对话框,锁住程序直到用户关闭该对话框,期间用户不可以切换同程序下的

其它窗口。


2. QWidget类是所有用户界面对象的基类。 
 
 QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。

QMainWindow常常被继承,当用户点击菜单项或者工具条按钮时,槽会被调用。


     QDialog类是对话框窗口的基类,可以是模态对话框也可以是非模态对话框。QDialog 是最普通的顶级窗口。

一个不会被嵌入到父窗口部件的窗口部件叫做顶级窗口部件。


     如果是顶级对话框,那就基于QDialog创建,如果是主窗体,那就基于QMainWindow,如果不确定,

或者有可能作为顶级窗体,或有可能嵌入到其他窗体中,则基于QWidget创建。

QWidget如何exec

    QDialog* qdialog = new QDialog();
    QWidget* qwidget = new QWidget(qdialog);
    qdialog->setAttribute(Qt::WA_DeleteOnClose);
    qdialog->exec();


 

你可能感兴趣的:(QT,qt,开发语言)