• 8914阅读
  • 4回复

Qt::Dialog?子窗口不能随父窗口关闭。但是Qt::Drawer后Qt::Dialog却可以?帮忙。。。【已结贴】 [复制链接]

上一主题 下一主题
离线yangfanxing
 
只看楼主 倒序阅读 楼主  发表于: 2009-12-17
1、@@@@@@@@@@@@@@@@@@@@@@@@@@@
    QWidget* ImgWindow11;
                    ImgWindow11 = new QWidget(this);
                    ImgWindow11->setWindowFlags(Qt::Dialog);//3
                    ImgWindow11->show();
2、@@@@@@@@@@@@@@@@@@@@@@@@@@@
    QWidget* ImgWindow11;
                    ImgWindow11 = new QWidget(this);
                    ImgWindow11->setWindowFlags(Qt::Drawer);//7
                    ImgWindow11->show();
                    ImgWindow11->setWindowFlags(Qt::Dialog);//3
                    ImgWindow11->show();
----------------------------------------------------
请问下哈:上边两种写法的区别是:
1、子窗口带标题栏,但是不可以随父窗口关闭;
2、子窗口带标题栏,并且可以随父窗口关闭;

这个大家有碰到的吗?太奇怪了吧???最后flag都是3.

Qt::Drawer是个什么DD???

Qt::Drawer
0x00000006 | Window
Indicates that the widget is a Macintosh drawer.

Macintosh drawer是什么???
[ 此帖被yangfanxing在2009-12-22 23:32重新编辑 ]
PHPWind好恶心。。。不想看这种界面。。。
离线sbtree
只看该作者 1楼 发表于: 2009-12-17
引用楼主yangfanxing于2009-12-17 16:04发表的 Qt::Dialog?子窗口不能随父窗口关闭。但是Qt::Drawer后Qt::Dialog却可以?帮忙。。。 :
.......Macintosh drawer是什么???
.......

应该是苹果系统的窗口特征吧
windows 7 + VC++2008 + Qt4.5.2
离线yangfanxing
只看该作者 2楼 发表于: 2009-12-17
引用第1楼sbtree于2009-12-17 16:59发表的  :
应该是苹果系统的窗口特征吧


算是吧。。。这个特征可以使子窗口随父窗口关闭【1】~~~但是没有标题栏【2】~~~

我既想要【1】又想要【2】。
PHPWind好恶心。。。不想看这种界面。。。
离线yb824
只看该作者 3楼 发表于: 2009-12-17
父窗口.setAttribute(Qt::DeleteOnClose, true) 关闭的时候子窗也被释放掉了,自然就关了
离线yangfanxing
只看该作者 4楼 发表于: 2009-12-18
引用第3楼yb824于2009-12-17 21:09发表的  :
父窗口.setAttribute(Qt::DeleteOnClose, true) 关闭的时候子窗也被释放掉了,自然就关了


我在构造函数中添加这句,经常导致程序崩溃,,,怎么回事呢?
PHPWind好恶心。。。不想看这种界面。。。
快速回复
限100 字节
 
上一个 下一个