您的位置:首页 > 编程语言 > Qt开发

【QT学习】对话类QDialog

2015-12-02 15:05 253 查看
非模态对话框:可以与同一个程序的其他窗口进行交互

#include "mywidget.h"

#include "ui_mywidget.h"

#include<QDialog>

MyWidget::MyWidget(QWidget *parent) :

    QWidget(parent),

    ui(new Ui::MyWidget)

{

    ui->setupUi(this);

    QDialog *dialog = new QDialog(this);

    dialog->show();
}

模态对话框:在该对话框没有关闭之前,不能与同一个应用程序的其他窗口进行交互

将上述代码改为

QDialog dialog(this);

dialog.exec();

还可以使用setModal()函数来实现模态对话框

QDialog *dialog = new QDialog(this);

dialog->setModal(ture);

dialog->show();

与setModal()函数相同的还有一个setWindowModality().

上面三个代码的区别:

        第一段代码对话框和MyWidget类对象的窗口同时弹出,可以交互;第二段代码对话框先弹出,关闭对话框之后MyWidget类对象的窗口弹出;没有关闭之前不能交互;第三段代码是模态的,但是对话框和MyWidget类对象的窗口同时弹出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  qt 对话框