Qt::WindowFlags里面的枚举类型,对于QT里面的窗口表现有较大的控制作用,所以这里特意挑选关键的类型来进行说明。
Qt::Widget-->这是Widget的默认值,如果新的窗口部件没有父窗口的话,则它是一个独立的窗口,否则是父窗口的一个子窗口。
QT::Window-->无论是否有父窗口,它都是一个窗口,通常有一个标题栏和窗口边框。
Qt::Dialog-->这是QDialog的默认值,新窗口部件是一个对话框。
Qt::Popup-->新窗口部件是一个弹出式的顶层窗口。
Qt::ToolTip-->新窗口部件是一个提示窗口,没有标题栏和边框。
Qt::Desktop-->新窗口部件是桌面,它是QDesktopWidget的默认值。
Qt::FramelessWindowHint-->产生一个无窗口边框的窗口,此时无法拖动窗口和改变它的大小等。一般自绘标题栏就会置上这个标志,然后自己响应拖动等。
Qt::CustomizeWindowHint-->关闭默认的窗口标题提示。
Qt::WindowTitleHint-->为窗口装饰一个标题栏。
Qt::WindowMinimizeButtonHint-->为窗口添加最小化按钮
Qt::WindowMaximizeButtonHint-->为窗口添加最大化按钮
Qt::WindowMinMaxButtonsHint-->为窗口添加最大、最小化按钮
比如默认窗口的Dialog是没有带有最大、最小化按钮的,此时可以通过如下的操作让它带有:
Qt::WindowFlags flag = this->windowFlags();
flag |= Qt::WindowMinMaxButtonsHint;
this->setWindowFlags(flag);
网友评论