Qt 设置窗口属性setWindowFlags函数

摘要:
如果工具窗口具有父窗口小部件,则它将显示在父窗口上,否则相当于使用Qt::WindowStaysOnTopHint提示。
Qt 设置窗口属性setWindowFlags函数

说明:setWindowFlags函数就是设置窗口属性,本博客主要分析此函数的参数

本博客转载CSDN博主「hjhomw」的原创文章。
原文链接:https://blog.csdn.net/hejun_haitao/java/article/details/50815695

主要是记录一下项目中遇到的问题。

复制代码
主要使用的是WindowsType枚举
enum WindowType {
        Widget = 0x00000000,
        Window = 0x00000001,
        Dialog = 0x00000002 | Window,
        Sheet = 0x00000004 | Window,
        Drawer = 0x00000006 | Window,
        Popup = 0x00000008 | Window,
        Tool = 0x0000000a | Window,
        ToolTip = 0x0000000c | Window,
        SplashScreen = 0x0000000e | Window,
        Desktop = 0x00000010 | Window,
        SubWindow =  0x00000012,

        WindowType_Mask = 0x000000ff,
        MSWindowsFixedSizeDialogHint = 0x00000100,
        MSWindowsOwnDC = 0x00000200,
        X11BypassWindowManagerHint = 0x00000400,
        FramelessWindowHint = 0x00000800,
        WindowTitleHint = 0x00001000,
        WindowSystemMenuHint = 0x00002000,
        WindowMinimizeButtonHint = 0x00004000,
        WindowMaximizeButtonHint = 0x00008000,
        WindowMinMaxButtonsHint = WindowMinimizeButtonHint | WindowMaximizeButtonHint,
        WindowContextHelpButtonHint = 0x00010000,
        WindowShadeButtonHint = 0x00020000,
        WindowStaysOnTopHint = 0x00040000,
        // reserved for Qt3Support:
        // WMouseNoMask = 0x00080000,
        // WDestructiveClose = 0x00100000,
        // WStaticContents = 0x00200000,
        // WGroupLeader = 0x00400000,
        // WShowModal = 0x00800000,
        // WNoMousePropagation = 0x01000000,
        CustomizeWindowHint = 0x02000000,
        WindowStaysOnBottomHint = 0x04000000,
        WindowCloseButtonHint = 0x08000000,
        MacWindowToolBarButtonHint = 0x10000000,
        BypassGraphicsProxyWidget = 0x20000000,
        WindowOkButtonHint = 0x00080000,
        WindowCancelButtonHint = 0x00100000,
        WindowSoftkeysVisibleHint = 0x40000000,
        WindowSoftkeysRespondHint = 0x80000000
}
复制代码

Qt::Widget: QWidget构造函数的默认值,如果新的窗口部件没有父窗口部件,则它是一个独立的窗口,否则就是一个子窗口部件
Qt::Window: 无论是否有父窗口部件,新窗口部件都是一个窗口,通常有一个窗口边框和一个标题栏
Qt::Dialog: 新窗口部件是一个对话框,它是QDialog构造函数的默认值
Qt::Sheet: 新窗口部件是一个Macintosh表单(sheet)
Qt::Drawer: 新窗口部件是一个Macintosh抽屉(drawer)
Qt::Popup: 新窗口部件是一个弹出式顶层窗口
Qt::Tool: 新窗口部件是一个工具(tool)窗口,它通常是一个用于显示工具按钮的小窗口。如果一个工具窗口有父窗口部件,则它将显示在父窗口的部件上面,否则相当于使用了Qt::WindowStaysOnTopHint提示。
Qt::ToolTip: 新窗口部件是一个提示窗口,没有标题栏和窗口边框
Qt::Desktop: 新窗口部件是桌面,它是QDesktopWidget构造函数的默认值
Qt::SplashScreen: 新窗口部件是一个欢迎窗口,它是SplashScreen构造函数的默认值。
Qt::SubWindow: 新窗口部件是一个子窗口,而无论窗口部件是否有父窗口部件。此外,Qt还定义了一些控制窗口外观的窗口提示(这些窗口提示仅对顶层窗口有效)
Qt::MSWindowFiredSizeDialogHint: 为Windows系统上的窗口装饰一个窄的对话框边框,通常这个提示用于固定大小的对话框
Qt::MSWindowOwnDC: 为Windows系统上的窗口添加自身的显示上下文菜单
Qt::X11BypassWindowManagerHint: 完全忽视窗口管理器,它的作用是产生一个根本不被管理的无窗口边框的窗口(此时,用户无法使用键盘进行输入,除非手动调用QWidget::activateWindow()函数)
Qt::FramelessWindowHint: 产生一个无窗口边框的窗口,此时用户无法移动该窗口和改变它的大小
Qt::CustomizeWindowHint: 关闭默认的窗口标题提示
Qt::WindowTitleHint: 为窗口装饰一个标题栏
Qt::WindowSystemMenuHint: 为窗口添加一个窗口系统系统菜单,并尽可能地添加一个关闭按钮
Qt::WindowMinimizeButtonHint: 为窗口添加一个“最小化”按钮
Qt::WindowMaximizeButtonHint: 为窗口添加一个“最大化”按钮
Qt::WindowMinMaxButtonHint: 为窗口添加一个“最小化”按钮 和一个“最大化”按钮
Qt::WindowContextHelpButtonHint: 为窗口添加一个“上下文帮助”按钮
Qt::WindowStaysOnTopHint: 告知窗口系统,该窗口应该停留在所有其他窗口的上面。
Qt::WindowType_Mask: 一个用于提示窗口标识的窗口类型部分的掩码
Qt::Dialog|Qt::FramelessWindowHint|Qt::WindowStaysOnTopHint);



免责声明:文章转载自《Qt 设置窗口属性setWindowFlags函数》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇电子签名实现的思路、困难及解决方案Linux系统休眠和设备中断处理下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

创建 Java 项目

通过 spring initializr 创建 Spring Boot 项目 打开网站 https://start.spring.io/ 填写项目名称,spring boot 版本,编程语言,Dependency 等信息 然后可以生成包含代码和配置的 zip 包,可以导入 IDE 通过 STS 创建 Spring Boot 项目 下载 STS (Spri...

Vue指令和事件

/** * 语法糖的概念: * 语法糖是指在不影响功能的情况下,添加某种方法实现同样的; * 使用语法糖,可以简化代码的书写 * 比如 v-on:click='func' @click='func' * v-bind:src :src */ <!-- v-on 可以监听原生DOM事件click,dbclick,keyup,mousemove...

ANDROID L——Material Design综合应用(Demo)

转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Material Design: Material Design是Google推出的一个全新的设计语言,它的特点就是拟物扁平化。 我将Material Design分为例如以下四部分: 主题和布局——ANDROID L——Material...

Windows程序控件升级==&amp;gt;&amp;gt;构建布局良好的Windows程序

01.菜单栏(MenuStrip) 01.看看这就是menuStrip的魅力: 02.除了一些常用的属性(name.text..)外还有: 03.有人会问:上图的快捷键: 方法:  方式一:1.设置菜单项的Text属性为(打开(&F)),     首先必须按住alt+主菜单快捷键进入到对应的主菜单,     然后直接按F就可以打开子窗体。  方式...

动态菜单/权限管理的实现效果(数据前提:须做好 菜单、按钮、角色、用户等相关功能)

菜单管理 1.通过点击左侧树形某一项,右侧表格中出现对应菜单数据 2.实现菜单的增删改查功能——增改功能有树形下拉列表功能 3.列表数据——可排序、可下载excel、可自定义列      按钮管理 1. 通过点击左侧树形某一项,右侧表格中出现对应按钮数据 2.实现了按钮的增删改查功能——增改功能有树形下拉列表功能 3.列表数据——可排序、可下载excel...

QDialog 添加最大化、最小化按钮和关闭按钮,并且要正常显示

在使用QDialog时,默认情况下只有“这是什么”和“关闭”按钮(不知道为什么QT要这么做),但是我们习惯有最大化和最小化按钮。本文介绍如何在该模式下如何设置。 新建一个QDialog工程,然后打开Dialog.cpp文件,在Dialog的构造函数里写入如下的代码即可: [cpp] view plain copy   print? Qt::Wind...