• 11200阅读
  • 8回复

关闭主窗口,子窗口还在???咋整?【杯具结贴】 [复制链接]

上一主题 下一主题
离线yangfanxing
 
只看楼主 倒序阅读 楼主  发表于: 2009-12-15
            
QWidget* ImgWindow1;
                ImgWindow1 = new QWidget(this);
                ImgWindow1->setObjectName("OriginalImgWindow_1");
                ImgWindow1->setWindowTitle(tr("1"));
                ImgWindow1->setAttribute(Qt::WA_DeleteOnClose, true);

就是这样,New一个子窗口,然后它不是随着父窗口销毁的吗???

要重写父窗口closeEvent不成?个人觉得不应该。。。

PS:
设置Qt::drawer的结果是有时候可以随父窗口退出,有时候又不可以~~~这是为何???
[ 此帖被yangfanxing在2009-12-22 23:33重新编辑 ]
PHPWind好恶心。。。不想看这种界面。。。
离线sbtree
只看该作者 1楼 发表于: 2009-12-15
对父窗口设置setAttribute(Qt::WA_DeleteOnClose, true);
windows 7 + VC++2008 + Qt4.5.2
离线yangfanxing
只看该作者 2楼 发表于: 2009-12-15
引用第1楼sbtree于2009-12-15 21:34发表的  :
对父窗口设置setAttribute(Qt::WA_DeleteOnClose, true);


this->setAttribute(Qt::WA_DeleteOnClose, true);

这样直接造成主窗口关闭时崩溃?why?
PHPWind好恶心。。。不想看这种界面。。。
离线sbtree
只看该作者 3楼 发表于: 2009-12-15
引用第2楼yangfanxing于2009-12-15 21:43发表的  :
this->setAttribute(Qt::WA_DeleteOnClose, true);
这样直接造成主窗口关闭时崩溃?why?


看来我还得实践一下才行,理论上的东西实际上并不完美阿
windows 7 + VC++2008 + Qt4.5.2
离线sbtree
只看该作者 4楼 发表于: 2009-12-15
我试了一下这个,好象没问题setAttribute(Qt::WA_QuitOnClose);
windows 7 + VC++2008 + Qt4.5.2
离线sbtree
只看该作者 5楼 发表于: 2009-12-15
有个问题想问问,你是怎样让子窗口浮动在父窗口之上的? 据我了解,利用父对象创建的窗口一般都是嵌入在父窗口之中的,或者是隐藏在父窗口之中的。
如果子窗口是QDialog,倒是可以
[ 此帖被sbtree在2009-12-15 23:01重新编辑 ]
windows 7 + VC++2008 + Qt4.5.2
离线dbzhang800

只看该作者 6楼 发表于: 2009-12-15
引用第5楼sbtree于2009-12-15 22:55发表的  :
有个问题想问问,你是怎样让子窗口浮动在父窗口之上的? 据我了解,利用父对象创建的窗口一般都是嵌入在父窗口之中的,或者是隐藏在父窗口之中的。
如果子窗口是QDialog,倒是可以

setWindowFlags(Qt::Window)
离线yangfanxing
只看该作者 7楼 发表于: 2009-12-15
谢谢~
是子窗口关闭发射消息导致的崩溃~~~


PS:我这个鱼与熊掌啊~~~
PHPWind好恶心。。。不想看这种界面。。。
离线robertkun

只看该作者 8楼 发表于: 2009-12-16
setWindowFlags(Qt::FramelessWindowHint | Qt::CustomizeWindowHint | Qt::Dialog | Qt::Popup);
                                              简单的生活使人快乐!
快速回复
限100 字节
 
上一个 下一个