Qt 常用窗口类常用特性
1、void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on = true)
用于设定窗口的一些属性
枚举 | 含义 |
Qt::WA_AcceptDrops | 允许窗体接收拖放来的组件 |
Qt::WA_DeleteOnClose | 窗体关闭时删除自己,释放内存 |
Qt::WA_Hover | 鼠标进入或移出窗体时产生paint事件 |
Qt::WA_AcceptTouchEvent | 窗体是否接受触屏事件 |
2、void QWidget::setWindowFlag(Qt::WindowType flag, bool on = true)
void QWidget::setWindowFlags(Qt::WindowFlags type)
setWindowFlag用于设定一个属性,可单独打开或者关闭;
setWindowFlags可用于同时设置多个属性。
枚举 | 含义 |
Qt::Widget |
QWidget类的默认类型。它有父窗体,就作为 父窗体的子窗体;否则就作为独立窗口 |
Qt::Window | 具有边框标题栏的窗体 |
Qt::Dialog | 显示为对话框窗体。这是QDialog默认类型 |
Qt::Popup | 用作弹出式顶级窗体,是模态的 |
Qt::Tool | 工具窗体,具有更小的标题栏和关闭按钮,通常用于工具按钮集合 |
Qt::ToolTip | 用于ToolTip消息提示的窗体 |
Qt::SplashScreen | 表面窗体是启动屏幕,是QSplashScreen默认类型 |
Qt::Desktop | 表面窗体是桌面,QDesktopWidget默认类型 |
Qt::SubWindow |
表面窗体是子窗体,例如QMdiSubWindow 就是这种类型控制窗体显示效果的常量 |
Qt::MSWindowsFixedSizeDialogHint | Windows平台上,使窗体具有更窄的边框,用于固定对话框大小 |
Qt::FramelessWindowHint | 创建无边框窗体 |
Qt::CustomizeWindowHint | 关闭默认的窗体标题栏 |
Qt::WindowTitleHint | 窗体有标题栏 |
Qt::WindowSystemMenuHint | 添加一个窗口系统菜单 |
Qt::WindowMinimizeButtonHint | 有最小化按钮 |
Qt::WindowMaximizeButtonHint | 有最大化按钮 |
Qt::WindowMinMaxButtonHint | 有最大最小化按钮 |
Qt::WindowCloseButtonHint | 有关闭按钮 |
Qt::WindowContextHelpButtonHint | 有上下级帮助按钮 |
Qt::WindowStaysOnTopHint | 窗体总是在顶层 |
Qt::WindowStaysOnBottomHint | 窗体总是在底层 |
Qt::WindowTransparentForInput | 窗体只作为输出,不接受输入 |
3、void QWidget::setWindowState(Qt::WindowStates windowState)
void QWidget::setWindowState(Qt::WindowStates windowStates)
表示了窗体状态
枚举 | 含义 |
Qt::WindowNoState | 正常状态 |
Qt::WindowMinimized | 窗口最小化 |
Qt::WindowMaximized | 窗口最大化 |
Qt::WindowFullScreen | 窗口填充整个屏幕,而且没有边框 |
Qt::WindowActive | 变为活动窗口,例如可以接受键盘输入 |
4、void setWindowModality(Qt::WindowModality windowModality)
设置窗口模态,只对窗口类型有用
枚举 | 含义 |
Qt::NonModal | 无模态,不会阻止其它窗口的输入 |
Qt::WindowModal | 窗口对于其父窗口、所有的上级父窗口都是模态的 |
Qt::ApplicationModal | 窗口对于整个应用程序都是模态的,阻止所有窗口的输入 |
5、void QWidget::setWindowOpacity(qreal level)
设置窗口透明度,level是1.0(完全不透明)至0.0(完全透明)之间的数,默认1.0.