Qt的窗口设置

本文介绍Qt的窗口设置。

采用Qt开发界面程序,会涉及到窗口的设置,如窗口标题栏是否显示,是否有最小,最大化按钮等,窗口当前显示最小化,最大化等。本文简要介绍常用的窗口设置方法。

1.窗口属性

窗口属性设置主要用于设置窗口的属性,函数原型为:

cpp 复制代码
void QWidget::setAttribute(Qt::WidgetAttribute attribute, bool on = true)

常用的属性设置如下:

|----------------------|-------------------|
| 属性 | 说明 |
| Qt::WA_DeleteOnClose | 非模态对话框创建,关闭时窗口被析构 |

2.窗口标志

窗口标志设置主要用于设置窗口的标志,这些标志与窗口的显示有关。可以使用"|"来进行组合,函数原型为:

cpp 复制代码
void setWindowFlags(Qt::WindowFlags type)

单独设置某一个标志,可以使用如下函数:

cpp 复制代码
void QWidget::setWindowFlag(Qt::WindowType flag, bool on = true)

常用的标志设置如下:

|------------------------------|---------------|
| 标志 | 说明 |
| Qt::Widget | Widget标志 |
| Qt::Window | 窗口标志 |
| Qt::Dialog | 对话框标志 |
| Qt::FramelessWindowHint | 窗口无边框 |
| Qt::CustomizeWindowHint | 关闭窗口标题栏 |
| Qt::WindowMinimizeButtonHint | 增加一个最小化按钮 |
| Qt::WindowMaximizeButtonHint | 增加一个最大化按钮 |
| Qt::WindowMinMaxButtonsHint | 增加一个最小化和最大化按钮 |
| Qt::WindowCloseButtonHint | 增加一个关闭按钮 |
| Qt::WindowShadeButtonHint | 窗口处于最上层 |
| Qt::WindowStaysOnTopHint | 窗口处于最下层 |

设置窗口标志用的还是比较多的,如对话框设置为无边框形式,可使用如下设置:

cpp 复制代码
setWindowFlags(Qt::Dialog | Qt::FramelessWindowHint | Qt::CustomizeWindowHint);

3.窗口状态

窗口状态设置主要用于设置窗口的状态,窗口的状态包括窗口的最大化,最小化,正常显示等,函数原型为:

cpp 复制代码
void QWidget::setWindowState(Qt::WindowStates windowState)

常用的标志设置如下:

|----------------------|---------------|
| 状态 | 说明 |
| Qt::WindowNoState | 正常状态 |
| Qt::WindowMinimized | 最小化 |
| Qt::WindowMaximized | 最大化 |
| Qt::WindowFullScreen | 填充整个屏幕 |
| Qt::WindowActive | 活动窗口,如可接受键盘输入 |

4.窗口模态

窗口模态设置主要用于设置窗口的模态,窗口的模态包括模态窗口,非模态窗口,函数原型为:

cpp 复制代码
void setWindowModality(Qt::WindowModality windowModality)

常用的模态设置如下:

|-----------------|-----|
| 模态 | 说明 |
| Qt::NonModal | 非模态 |
| Qt::WindowModal | 模态 |

5.窗口透明度

窗口透明度设置主要用于设置窗口的透明度,它的形参为一个浮点数,取值范围为0-1,函数原型为:

cpp 复制代码
void setWindowOpacity(qreal level)

总结,本文介绍了Qt的窗口设置。

相关推荐
光而不耀@lgy10 分钟前
C++初登门槛
linux·开发语言·网络·c++·后端
lkbhua莱克瓦2414 分钟前
用C语言实现——一个中缀表达式的计算器。支持用户输入和动画演示过程。
c语言·开发语言·数据结构·链表·学习方法·交友·计算器
Mr__Miss18 分钟前
面试踩过的坑
java·开发语言
啊丢_20 分钟前
C++——Lambda表达式
开发语言·c++
Chh07151 小时前
《R语言SCI期刊论文绘图专题计划》大纲
开发语言·r语言
Yeats_Liao1 小时前
Go 语言 TCP 端口扫描器实现与 Goroutine 池原理
开发语言·tcp/ip·golang
Thomas_YXQ2 小时前
Unity3D IK解算器技术分析
开发语言·搜索引擎·unity·全文检索·unity3d·lucene
机器视觉知识推荐、就业指导2 小时前
开源QML控件:进度条滑动控件(含源码下载链接)
前端·qt·开源·qml
liuweidong08022 小时前
【Pandas】pandas DataFrame rsub
开发语言·python·pandas
whoarethenext2 小时前
c++的jsoncpp使用
开发语言·c++·jsoncpp