现在的位置: 首页 > 综合 > 正文

QT 模态对话框和非模态对话框

2013年03月06日 ⁄ 综合 ⁄ 共 760字 ⁄ 字号 评论关闭

最近刚刚开始学习QT感觉挺好用的。

刚刚学了模态对话框和非模态对话框的创建,现在和大家分享一下。如有错误欢迎指正。

首先我自己写了一个类 class  MyDialog:public QDialog   在构造函数中实现了我的布局。

我想在主窗口中相应cliked()弹出MyDialog我分别用下面两种方式弹出

模态对话框

(方法一)槽中添加下面代码

************************strat***************************

    MyDialog *myDlg=new MyDialog;  

    myDlg->exec();

***********************end****************************

(方法二)

**************************strat****************************

    MyDialog *myDlg=new MyDialog;  

    myDlg->setModal(true);    

    myDlg->show();

************************end******************************

非模态对话框

   MyDialog *myDlg=new MyDialog;  

    myDlg->setModal(false);    

    myDlg->show();

在显示对话框时是否是模态,是根据modal属性来确定的。modal :是个bool类型,默认值是false,我们可以通过show()方法显示的对话框就是非模态的。

而如果将该属性值设置为true,就设置成了模态对话框。

另外:而使用exec()方法显示对话框的话,将忽略modal属性值的设置并把对话框设置为模态对话框。

抱歉!评论已关闭.