|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 不二如是 于 2016-9-22 11:26 编辑
本程序是第二种创建方法,流程如下
关于方法一、二、三的一些说明
方法一
在MyWidget类的构造函数中定义了一个QDialog类对象,并制定dialog的父窗口为MyWidget类对象,就是那个this参数
最后调用show()函数让其显示
此时程序一闪而过,然后就显示MyWidget()类对象的窗口了
为啥呢?
为了解决这个问题,引入方法二、方法三
方法二
使用了QDialog对象的指针,并使用new运算符创建内存空间,此时便可正常显示两个窗口。
注意阿
可以说成定义一个对象
是定义了一个指向QDialog类对象的指针变量(后面也会说成是定义了一个QDialog对象)
补充一点
这里为dialog对象指明了父窗口(this),所以就没必要使用delete来释放对象
方法三
此时运行程序后,发现对话框弹出来了
但MyWidget类对象没有出来
关闭对话框后,MyWidget类对象的窗口才弹出来
此时这个就叫做模态对话框
而方法二就是非模态。
关于模态与非模态说明
打开方法二注释行,即添加
在show()函数前面使用setModal()函数即可将非模态变为模态
那么到底什么模态、非模态呢?
很简单
模态就是在没有关闭该对话框前,不能再与同一个应用程序的其他窗口进行交互
非模态,就是非模态啦。。。。。。。。。
好吧,非模态就是能与其他窗口进行交互,爱关闭就关闭,爱干嘛干嘛
|
|