实用的Qt窗口标志(Qt::WindowFlags)

2023-11-14

窗口标志枚举类型用于指定小部件的各种窗口系统属性。其中一些标志取决于底层窗口管理器是否支持它们。以下是一些比较实用的窗口标志:

1、Qt::Widget:这是QWidget的默认类型。如果有父窗口则为子窗口小部件,如果没有父窗口则为独立窗口小部件。

2、Qt::Window:小部件是一个窗口,通常带有窗口系统框架和标题栏,而不管小部件是否有父级如果有父级,小部件在顶层。默认标题栏有最小话、最大化、关闭按钮。如果小部件没有父级,则无法取消设置此标志。

    QWidget * w = new QWidget(this);
    w->setWindowFlags(Qt::Window);
    w->setAttribute(Qt::WA_DeleteOnClose);//关闭后删除对象
    w->show();

3、Qt::Dialog:小部件是一个对话框。默认标题栏有关闭按钮。这是QDialog的默认类型。如果有父级,小部件在顶层。

    w.setWindowFlags(Qt::Dialog);

4、Qt::Popup:小部件是一个弹出式顶级窗口,即它是模态窗口。无标题栏、无关闭按钮。这种类型适合作为子窗口,当失去焦点时窗口会关闭,适合用作弹出提示信息的窗口。合适的用法:

    QWidget * w = new QWidget(this);
    w->setWindowFlags(Qt::Popup);
    w->setGeometry(300,300,300,300);
    w->setAttribute(Qt::WA_DeleteOnClose);//关闭后删除对象
    w->show();

5、Qt::Tool:小部件是工具窗口。工具窗口通常是一个小窗口,有标题栏,标题栏上只有一个比一般窗口小的按钮如果有父级,小部件在顶层。如果没有父级,也可以考虑使用Qt::WindowStaysOnTopHint。它也可以与Qt::FramelessWindowHint结合使用去掉标题栏。

6、Qt::ToolTip:工具提示小部件。没有标题栏始终在顶层。失去焦点也不消失。比较合适的用法是把QLabel放到里面,设置提示信息,然后设置QTimer::singleShot让它过几秒钟消失。

7、Qt::FramelessWindowHint:生成无边框窗口。用户不能通过窗口系统移动或调整无边框窗口的大小。

8、Qt::CustomizeWindowHint:关闭默认窗口标题。


标题栏变得很窄,右键菜单没有了,按钮没有了。

9、Qt::WindowTitleHint:设置了CustomizeWindowHint之后保留标题栏:

setWindowFlags(Qt::CustomizeWindowHint |Qt::WindowTitleHint);

要两个一起设置。

10、Qt::WindowMinimizeButtonHint:最小化按钮。

11、Qt::WindowMaximizeButtonHint:最大化按钮。

12、Qt::WindowMinMaxButtonsHint:最大最小化两个按钮。

13、Qt::WindowCloseButtonHint:关闭按钮。

14、Qt::WindowContextHelpButtonHint:帮助按钮。

15、Qt::WindowStaysOnTopHint:窗口在顶层。

16、Qt::WindowStaysOnBottomHint:窗口在底层。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实用的Qt窗口标志(Qt::WindowFlags) 的相关文章

  • 删除 QComboBox“下拉”动画

    我正在使用 Qt 4 8 并且想在单击 QComboBox 时摆脱 下拉 动画 我也想稍微移动一下 到目前为止 我一直在考虑重新实现 showPopup 和 hidePopup 但不知道如何使其工作 此外 每次我尝试使用 CSS 进行移动或
  • 如何在 QTableWidget 的行和列中自动换行文本?

    I tried QTableWidget j new QTableWidget 10000 5 centralWidget j gt setColumnWidth 0 500 j gt setColumnWidth 1 30 j gt se
  • 检查目录是否为空

    我正在尝试检查目录是否为空 MainWindow MainWindow QWidget parent QMainWindow parent ui new Ui MainWindow ui gt setupUi this QDir Dir h
  • cx_freeze:QODBC 驱动程序未加载

    我的 python 应用程序如下所示 test py from PyQt4 import QtCore from PyQt4 import QtGui from PyQt4 import QtSql import sys import at
  • Windows 消息循环而不是 QApplication::exec() / QApplication::processEvents()

    我是否想念任何一个Qt如果我替换功能QApplication exec 使用标准 Windows 消息循环实现 这应该可以澄清我的意思 运行事件处理的常用 Qt 方式 int main int argc char argv QApplica
  • QLineEdit:显示处理后的文本,而不是输入的文本,但保留它(自定义回显模式)

    我想要一个QLineEdit不显示输入的文本 而是显示经过处理的版本 同时保留原始文本并在通过请求时返回它text 就像密码回显模式一样 但我不希望每个字符都被屏蔽 我想虚拟化空间 例如什么时候some text with spaces i
  • 如何将图标放置到 QLineEdit 上?

    stackoverflow com 网站的右上角有一个带有放大镜头的搜索字段和一个灰色的 搜索 关键字 我想知道是否有可能实现相同的外观QLineEdit 如果是这样那怎么办 QLineEdit lineEdit new QLineEdit
  • QTableView 中的虚拟列?

    我开始学习 Qt4 模型 视图编程 我有初学者问题 我有一个简单的应用程序 其中显示 sqlite 表QTableView class Model QtSql QSqlTableModel def init self parent None
  • QGraphicsView 和 eventFilter

    这个问题已经困扰我两天多了 所以我想我应该问一下 我在Win7上使用Qt 4 5 3 用VC2008编译 我有 MyGraphicsView 继承 QGraphicsView 和 MyFilter 继承 QObject 类 当我将 MyFi
  • Qt/c++ 随机字符串生成[重复]

    这个问题在这里已经有答案了 我正在创建一个应用程序 需要生成多个随机字符串 几乎就像一个由一定长度的 ASCII 字符组成的唯一 ID 这些字符混合有大写 小写 数字字符 有没有 Qt 库可以实现这一点 如果没有 在纯 C 中生成多个随机字
  • 程序意外完成 - QT Creator

    我正在尝试使用 QT Creator 使用 QT 框架开发 GUI 控制台应用程序 我使用的是Windows XP 我安装了QT 4 8 3和mingw 两者均已安装 没有任何错误 然后我安装了QT Creator QT 版本 路径中的 Q
  • 如何在按下托盘图标菜单操作时执行功能?

    int main int argc char argv QApplication oApp argc argv QAction action1 QMenu menu QSystemTrayIcon TrayIcon QIcon favico
  • 当我尝试构建 Qt 4.7.1 静态库时,“找不到 -ljscore”

    我尝试从最新的源构建静态 Qt 库 但出现以下错误 usr bin ld cannot find ljscore collect2 ld returned 1 exit status 如何解决这个问题呢 这是 Qt 构建系统中自 4 7 0
  • QDesktopServices::openUrl 在资源管理器中选择指定文件

    在大多数编码程序中 您可以右键单击该项目 然后单击 在资源管理器中显示 它会在资源管理器中显示选定项目的文件 在 Qt 中使用 QDesktopServices 如何做到这一点 或在 QT 中执行此操作的任何方式 您可以使用此方法在 Win
  • (如何)我可以抑制未找到包配置文件的警告吗?

    我正在尝试创建一个CMakeLists txt尝试查找的文件Qt5 如果失败 则尝试回退到Qt4安装 该脚本到目前为止有效 但如果出现以下情况我总会收到警告Qt5未安装 注意FindQt5 cmake是由提供Qt5并且仅当以下情况时才可用Q
  • GoQt 致命错误:QAbstractAnimation:没有这样的文件或目录

    我尝试编译 Qt 来开发桌面应用程序 我按照 Qt 网站上的官方 wiki 指南的说明进行操作 当我尝试go run示例文件夹中的示例 我收到错误 去运行 home pinkya rabbit workspace go1programs s
  • QTcpSocket 有时不发送数据

    我有两个 QT 应用程序 一个应用程序可以被认为保存了大数据 它每秒向第二个应用程序发送大约 10 KB 的数据块 之前我尝试使用QUdpSocket来传输数据 但由于MTU限制在2 5K左右 并且需要自己分割和重新组合数据 所以我改用QT
  • 错误 LNK2001:无法解析的外部符号 __CxxFrameHandler3

    我正在将 Qt 从 VS 2013 迁移到 Qt 5 10 1 到 VS 2015 出现以下多个链接错误 error LNK2001 unresolved external symbol CxxFrameHandler3 error LNK
  • QToolButton:更改菜单位置

    使用菜单时QToolButton菜单显示在按钮的正下方 有没有办法在按钮的左侧 右侧显示菜单 我知道这个问题不久前已得到回答 但我想为此问题添加新答案 因为接受的答案不再有效 实际上 更改 QToolButton 上的菜单位置非常容易 您需
  • 如何使QTableView类的restoreState()和saveState()正常工作?

    首先 我想说 我的问题已经在这里讨论过 并且这里是 https stackoverflow com questions 1163030 qt qtableview and horizontalheader restorestate 但答案并

随机推荐

  • opencv函数:flip函数

    flip函数是矩阵或者图像翻转 其实图像的本质也是矩阵 void flip InputArray src OutputArray dst int flipCode 参数 src 输入矩阵 dst 翻转后矩阵 类型与src一致 flipCod
  • CTS Failed 项解决

    CTS Failed 项解决 CtsWindowManagerDeviceTestCases Test android server wm MultiDisplaySystemDecorationTests testLaunchSecond
  • idea连接数据库实现增删改查

    连接数据库 在application properties中编写代码实现数据库连接 创建Student类 编写插入到数据库里的信息 id name等 并创建set get tostring方法 创建接口 创建StudentImp类实现Stu
  • 安居客滑块js逆向 - 逻辑详解

    注 本篇博客仅供学习使用 请勿用做其他商业用途 如有侵权 请联系本菜鸟 本菜鸟在最近的学习过程中又遇到了一个带有滑块的验证码 觉得有点意思 所以写这篇博客记录一下 对比而言 难度比某验和某盾的简单一丢丢 目标网址 aHR0cHM6Ly93d
  • logback appender简介说明

    转自 logback appender简介说明 下文笔者讲述logback的appender的简介说明 如下所示 logback中appender是负责写日志的组件 appender的功能 用于设置日志输出的目的地 日志输出的位置可为控制台
  • 惨痛的教训,疫情下失业的中年程序员

    最近身边的一个朋友突然间就被辞退了 而且是一线互联网大厂 周末跟我聚了下 喝了点小酒 聊了很多 他说我可以把他的经历发出来 因为他已经看淡了 只要不提他名字就行 我本来不擅长写这种文章 让他把心路历程写了一遍 写完发现简直没法看 这两天被我
  • TypeScript类型注解和类型推断

    类型注解和类型推断 类型注解 let count number count 123 这段代码就是类型注解 意思是显示的告诉代码 我们的count变量就是一个数字类型 这就叫做类型注解 当你明白了类型注解的概念之后 再学类型推断就更简单了 先
  • 类的定义方法

    一 类的定义方法 注意 1 类定义最后的分号不能省略 2 类中的数据成员不能在类中进行初始化 需要在构造函数中初始化 3 类名最好能体现其功能 首字母建议大写 二 类的实现方法 1 在类定义时同时实现 若成员函数中在类中定义 则被计算机自动
  • 陀螺产业区块链第四季

    2020年4月 国家发改委在例行新闻发布会上宣布区块链被正式列为新型基础设施中的信息基础设施 自此区块链正式搭上新基建的 风口 与传统基础设施建设相比 新型基础设施建设更加侧重于突出产业转型升级的新方向 无论是5G还是区块链 都体现出加快推
  • SIFT特征提取-应用篇

    SIFT特征具有缩放 旋转特征不变性 下载了大牛的matlab版SIFT特征提取代码 解释如下 1 调用方法 将文件加入matlab目录后 在主程序中有两种操作 op1 寻找图像中的Sift特征 image descrips locs si
  • 最全iOS 应用上架流程(提交到AppStore)

    一 上架基本需求资料 1 苹果开发者账号 公司已有可以不用申请 需要开通开发者功能 每年 99 美元 2 开发好的APP 借助辅助工具appuploader创建证书跟描述文件 二 证书 描述文件 借助辅助工具appuploader 上架版本
  • django runserver开启服务(开启外网访问与ipv6访问)

    首先setting要设置 ALLOWED HOSTS 然后在启动时 使用 python manage py runserver 8000 或是 python manage py runserver 8000 这样 开启外网访问 ipv4与i
  • numpy中argsort()排序函数的使用

    argsort 函数返回的是数组从小到大的索引值 直接上例子 一 对于一维数组 1 升序排列 默认是升序 import numpy as np 一维数组升序排列 data np array 3 5 1 np argsort data 输出结
  • 数据库原理-关系模式的规范化

    关系数据库的规范化理论是数据库逻辑设计的工具 一个关系只要其分量都是不可分的数据项 它就是规范化的关系 但这只是最基本的规范化 规范化程度可以有6个不同的级别 即6个范式 规范化程度过低的关系不一定能够很好地描述现实世界 可能会存在插入异
  • 通过WIndows命令行访问MySQL数据库

    在cmd命令行里输入mysql h127 0 0 1 uroot p用户密码 这样就可以连接了 使用 show databases 这个命令可以显示出所有的database表以方便我们查看 输入 quit 退出
  • @vant/weapp

    文章目录 一 介绍 二 安装 1 cd 到项目文件目录 2 使用 npm 安装 3 修改项目配置 4 构建 5 其他文件 三 使用 四 参考 微信小程序使用 vant weapp组件 一 介绍 Vant 是一个开源的移动端组件库 在微信小程
  • 基本的tcp套接口编程

    基本的tcp套接口编程 1 socket函数 为了执行网络I O 一个进程必须做的第一件事情是调用socket函数 指定期望的通信协议类型 include
  • 基于dlib的目标追踪

    之前都在做目标检测 训练自己的检测器做检测 缺点就是电脑性能稍微差点的话 预测一次的时间就会稍久 我做的又正好是视频预测 所以连续播放都卡成PPT了 无奈之下选择抽帧检测 于是那闪烁效果堪比蹦迪现场的灯光 最后拍板定案的方法就是目标追踪了
  • 软件开发项目流程 - 立项

    引言 在互联网行业从事开发工作三年余 虽然时间不长 但对于开发流程也有一定的认识 写一篇关于这方面的内容 以记录自己的成长历程 引言 目的 立项流程 标准项目管理 总结 目的 当我们发现市场上有一个项目有利可图 且我们有能力做的时候 发起的
  • 实用的Qt窗口标志(Qt::WindowFlags)

    窗口标志枚举类型用于指定小部件的各种窗口系统属性 其中一些标志取决于底层窗口管理器是否支持它们 以下是一些比较实用的窗口标志 1 Qt Widget 这是QWidget的默认类型 如果有父窗口则为子窗口小部件 如果没有父窗口则为独立窗口小部