Qt官方示例-窗口标志
- 2019 年 11 月 27 日
- 筆記
窗口标志示例展示了如何使用Qt中可用的窗口标志类型来指定各窗口系统属性。

根据示例整理出来的各窗口标志作用一览表如下:
- 只能设置一个的窗口标志对照表
窗口的默认属性
- 可以设置多个的窗口标志对照表

- 部分代码(更新窗口标志)
void ControllerWindow::updatePreview() { Qt::WindowFlags flags = 0; if (windowRadioButton->isChecked()) { flags = Qt::Window; } else if (dialogRadioButton->isChecked()) { flags = Qt::Dialog; } else if (sheetRadioButton->isChecked()) { flags = Qt::Sheet; } else if (drawerRadioButton->isChecked()) { flags = Qt::Drawer; } else if (popupRadioButton->isChecked()) { flags = Qt::Popup; } else if (toolRadioButton->isChecked()) { flags = Qt::Tool; } else if (toolTipRadioButton->isChecked()) { flags = Qt::ToolTip; } else if (splashScreenRadioButton->isChecked()) { flags = Qt::SplashScreen; } if (msWindowsFixedSizeDialogCheckBox->isChecked()) flags |= Qt::MSWindowsFixedSizeDialogHint; if (x11BypassWindowManagerCheckBox->isChecked()) flags |= Qt::X11BypassWindowManagerHint; if (framelessWindowCheckBox->isChecked()) flags |= Qt::FramelessWindowHint; if (windowNoShadowCheckBox->isChecked()) flags |= Qt::NoDropShadowWindowHint; if (windowTitleCheckBox->isChecked()) flags |= Qt::WindowTitleHint; if (windowSystemMenuCheckBox->isChecked()) flags |= Qt::WindowSystemMenuHint; if (windowMinimizeButtonCheckBox->isChecked()) flags |= Qt::WindowMinimizeButtonHint; if (windowMaximizeButtonCheckBox->isChecked()) flags |= Qt::WindowMaximizeButtonHint; if (windowCloseButtonCheckBox->isChecked()) flags |= Qt::WindowCloseButtonHint; if (windowContextHelpButtonCheckBox->isChecked()) flags |= Qt::WindowContextHelpButtonHint; if (windowShadeButtonCheckBox->isChecked()) flags |= Qt::WindowShadeButtonHint; if (windowStaysOnTopCheckBox->isChecked()) flags |= Qt::WindowStaysOnTopHint; if (windowStaysOnBottomCheckBox->isChecked()) flags |= Qt::WindowStaysOnBottomHint; if (customizeWindowHintCheckBox->isChecked()) flags |= Qt::CustomizeWindowHint; previewWindow->setWindowFlags(flags); ... }
关于更多
- 在QtCreator软件可以找到:

- 在以下Qt安装目录找到:
C:Qt{你的Qt版本}Examples{你的Qt版本}widgetswidgetswindowflags
- 相关链接
https://doc.qt.io/qt-5/qtwidgets-widgets-windowflags-example.html