Qt的窗口的设置

news2024/9/22 1:32:19

窗口外部设置 

Qt::WindowFlags

Qt::WidgetQWidget默认窗口,没有父窗口的话,是一个独立窗口
Qt::Window是一个窗口,有窗口边框和标题
Qt::Dialog是一个对话框窗口
Qt::Sheet是一个窗口或部件Macintosh表单(sheet)
Qt::Drawer是一个窗口或部件Macintosh抽屉
Qt::Popup是一个弹出式顶层窗口
Qt::Tool是一个工具窗口
Qt::ToolTip是一个提示窗口,没有标题栏和窗口边框
Qt::SplashScreen是一个欢迎窗口,是QSplashScreen构造函数的默认值
Qt::Desktop是一个桌面,是QDesktopWidget构造函数的默认值
Qt::SubWindow一个子窗口

对话框的控件:

Qt::MSWindowFiredSizeDialogHintWindows系统上的窗口装饰,通常用于提示固定大小的对话框
Qt::MSWindowsOwnDCWindows系统上的窗口添加自身的显示上下文
Qt::FramelessWindowHint产生一个无窗口边框的窗口,用户无法移动或改变大小
Qt::CustomizeWindowHint关闭默认窗口标题提示
Qt::WindowTitleHint为窗口修饰一个标题栏
Qt::WindowSystemMenuHint为窗口修饰一个窗口菜单系统
Qt::WindowMinimizeButtonHint为窗口添加最小化按钮
Qt::WindowMaximizeButtonHint为窗口添加最大化按钮
Qt::WindowMinMaxButtonsHint为窗口添加最大化和最小化按钮
Qt::WindowCloseButtonHint窗口只有一个关闭按钮
Qt::WindowStaysOnTopHint把窗口置前

 使用方法:

  • 使用setWindowFlage() 使用
  • 添加窗口部件使用: |
  • 去除窗口使用部件:& ~

1.生成一个无窗口边框的窗口 

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    resize(200,200);//设置窗口大小
    setWindowFlag(Qt::FramelessWindowHint);
}

 

2.去除放大缩小按键 

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    resize(200,200);//设置窗口大小
    //setWindowFlag(Qt::FramelessWindowHint);
    setWindowFlags(windowFlags()& ~Qt::WindowMinMaxButtonsHint);//去除最大化窗口
}

 3.在一个新建控件上的使用

    QWidget *widget1=new QWidget(0,Qt::FramelessWindowHint);//0,代表无父类
    resize(300,200);//设置窗口大小
    widget1->show();

设置窗口初始状态状态:

在QWidget中使用setWindowState()来设置窗口的状态 

函数用法
Qt::WindowMaximized最大化
Qt::WindowMinimized最小化
Qt::WindowFullScreen全屏显示
Qt::WindowActive活动窗口
Qt::WindowNoState默认情况

1. 初始化状态为最大化:

    setWindowFlags(windowFlags()& ~Qt::WindowMinMaxButtonsHint);//去除最大化窗口
    setWindowState(Qt::WindowMaximized);//初始状态最大化

 占满全屏:

 2.默认最小化

    setWindowFlags(windowFlags()& ~Qt::WindowMinMaxButtonsHint);//去除最大化窗口
    setWindowState(Qt::WindowMinimized);//初始状态最小化

直接放到后台:(因为我没设置窗口最小值 )

 

 窗口的几何布局:

窗口的坐标:

不包含框架的长宽的获取:

  • width()、height()
  • gemometry().width()、gemometry().height()

 包含框架的长宽的获取:

  • frameGeometry().widget()
  • frameGeometry().height() 

 不包含框架的坐标设置:

  • geometry().x()
  • geometry().y()
  • geometry()

 包含框架的坐标设置:

  • x()
  • y()
  • pos()

常用的一些窗口函数 :

窗口函数功能
setWindowTitle()设置窗口标题
resize()设置窗口大小
move()移动窗口(含框架)
 setFixedSize()固定窗口大小
hide()

隐藏窗口

show()显示窗口(非模态)
close()关闭窗口
showMinimized()最小化
showMaximized()最大化
showNormal()恢复原状

例子: 

    setWindowTitle("一个窗口");//设置窗口标题
    setFixedSize(300,300);//固定窗口大小
    QPushButton *pu=new QPushButton(this);
    pu->move(100,100);//把该控件移到100,100

 去除边框实现最小化和最大化,关闭,恢复原状功能

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    resize(600,600);//设置窗口大小
    setWindowTitle("一个窗口");//设置窗口标题
    setWindowFlags(Qt::FramelessWindowHint);//去除窗口边框
    QPushButton *pu0=new QPushButton(this);//最小化
    QPushButton *pu1=new QPushButton(this);//最大化
    QPushButton *pu2=new QPushButton(this);//关闭
    QPushButton *pu3=new QPushButton(this);//恢复初始状态
    pu0->move(100,100);//把该控件移到100,100
    pu1->move(100,200);//把该控件移到100,200
    pu2->move(100,300);//把该控件移到100,300
    pu3->move(100,400);//把该控件移到100,400
    pu0->setText("最小化");
    pu1->setText("最大化");
    pu2->setText("关闭");
    pu3->setText("恢复原状");
    connect(pu0,&QPushButton::clicked,this,&QWidget::showMinimized);//点击按钮最小化
    connect(pu1,&QPushButton::clicked,this,&QWidget::showMaximized);//点击按钮最大化
    connect(pu2,&QPushButton::clicked,this,&QWidget::close);//关闭窗口
    connect(pu3,&QPushButton::clicked,this,&QWidget::showNormal);//恢复原状

}

不方便展示,这里就不展示了。

使用无边框的窗口时,如果设置关闭按键的话,需要强制关闭进程。

1.运行程序

2.点击应用程序输出

3.点击关闭按键 ,就可以强制退出程序

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/511534.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mac 安装Nginx详细教程

一、前言 本文介绍一下,如何在Mac系统中安装Nginx,把详细过程记录下来,方便以后查看,也方便大家学习。 二、正文 1、安装 Homebrew homebrew是什么?它是Mac中的一款软件包管理工具,通过brew可以很方便的…

复刻一个羊了个羊掘金商城版

游戏逻辑 与羊了个羊逻辑一致&#xff0c;不再赘述 游戏实现 盛放元素的容器box&#xff0c;临时存储的容器temp&#xff0c;多余元素的容器source与source1&#xff0c;结果元素result <div id"box"></div><div id"temp"></div&…

【OC底层-类和对象深基】

文章目录 前言1 类和对象1.1 类1.1.1 cache_t 和 class_data_bits_t 1.2 对象 2 isa指针&#xff08;结构体&#xff09;复习-OC中的对象实例对象&#xff08;Instance&#xff09;类对象(Class)元类对象isa的指向方法调用顺序&#xff08;不涉及消息转发&#xff09; 2.1 unio…

JavaScrip 实战案例之【实现动画导航栏效果】

​Hello~ 咱们今天一起来学习一个动画导航的小项目 Part 1 HTML结构 <body><nav class"active" id"nav"><ul><li><a href"#">Home</a></li><li><a href"#">Works</a>&…

Cy5.5-PEG-NH2/SH/COOH/MAL,NH2-PEG-Cy5.5;CY5.5-聚乙二醇-氨基文章介绍

Cy5.5-PEG-NH2 cy5.5-聚乙二醇-氨基 中文名称&#xff1a;CY5.5-聚乙二醇-氨基 英文名称&#xff1a;Cy5.5-PEG-NH2 溶剂&#xff1a;溶于水、氯仿&#xff0c;DMSO等常规性有机溶剂 性状&#xff1a;固体或粉末&#xff0c;取决于分子量 分子量&#xff1a;1k、2k、3.4k、…

计算机视觉(4)—— 未有深度学习之前

目录 四、未有深度学习之前 4.1 图像分割 4.1.1 基于阈值分割 4.1.2 基于边缘分割 4.1.3 基于区域分割 &#xff08;1&#xff09;区域生长法 &#xff08;2&#xff09;分水岭算法 4.1.4 基于图论分割 &#xff08;1&#xff09;Graph Cuts 分割 ​&#xff08;2&…

关于说服(三)- 表达

关于口才 一般人眼中的口才好&#xff1a; 有见解&#xff0c;有想法内容条理分明&#xff0c;逻辑清晰严谨真诚自信&#xff0c;拉近距离 这些都关注于逻辑与内容&#xff0c;真正的表达是要教你如何输出有价值的信息 表达需要做什么&#xff1a; 如何筛选素材&#xff0c…

【P16】JMeter JSON提取器(JSON Extractor)

文章目录 一、准备工作二、测试计划设计 一、准备工作 慕慕生鲜&#xff1a; http://111.231.103.117/#/login 进入网页后&#xff0c;登录&#xff0c;页面提供了账户和密码 搜索框输入“虾” 右键检查或按F12&#xff0c;打开调试工具&#xff0c;点击搜索 二、测试计划设…

Cy5.5-PEG-FA结构式 荧光Cy5.5标记聚乙二醇叶酸;PEG分子量2000,叶酸(-FA)基团可应用于靶向传递

Cy5.5-PEG-FA&#xff0c;Cy5.5-聚乙二醇-叶酸 中文名称&#xff1a;Cy5.5-聚乙二醇-叶酸 英文名称&#xff1a;Cy5.5-PEG-FA 溶剂&#xff1a;溶于水、氯仿&#xff0c;DMSO等常规性有机溶剂 性状&#xff1a;固体或粉末&#xff0c;取决于分子量 分子量&#xff1a;1k、…

OSS 文件文件夹 直接打包下载

前言 OSS 存放了很多项目&#xff08;项目是 TMagic 低代码平台编辑生成&#xff0c;自动上传 OSS&#xff09;&#xff0c;现在需要在管理后台将项目打包ZIP下载&#xff0c;并不在本地生成文件。 OSS 要下载项目文件&#xff1a; 一、思路实现 创建 OSSClient 实例获取 Bu…

198页11万字智慧水务平台建设方案(word)

目 录 一、项目概述 1、建设背景 2、存在问题 2、运营分析 二、支持技术 1、3S技术 2、物联网技术 3、富客户端技术 4、移动互联网技术 三、建设目标 三、需求分析 1、系统用户 2、调度管理对象 3、业务需求分析 3.1 主要业务描述 3.2 业务需求…

Mal-PEG2000-Cy5.5;Cy5.5-PEG-Maleimide 花箐染料Cy5.5-聚乙二醇-马来酰亚胺

CY5.5-PEG-Mal&#xff0c;CY5.5-聚乙二醇-马来酰亚胺 中文名称&#xff1a;CY5.5-聚乙二醇-马来酰亚胺 英文名称&#xff1a;CY5.5-PEG-Mal&#xff0c; Cy5.5-PEG-Maleimide 溶剂&#xff1a;溶于水、氯仿&#xff0c;DMSO等常规性有机溶剂 性状&#xff1a;固体或粉末&a…

车载以太网 - SomeIP - TC8用例常见缩写

对于初接触SomeIP的朋友来说,看测试用例最大的烦恼我想不仅仅是来自纯英文的描述,更多的一定无休止的缩写,那这些缩写到底代表什么意思呢,我也是深受其害的人,因此就把对应的缩写、中文、英文整理出来了,希望能对大家有所帮助。 常见缩写及中英文注释 SomeIP常见缩写英文…

第一章 电路模型和电路定律(习题解析)

第一章 电路模型和电路定律&#xff08;习题解析&#xff09; 简介&#xff1a; 书后面的习题详解&#xff0c;主要包含的内容关联方向与非关联方向、功率平衡 电路基础&#xff08;第一章电路模型和电路定律&#xff09;第一章电路模型和电路定律&#xff08;补充&#xff09;…

Bentley ContextCapture Center操作入门(1)

什么是ContextCapture Center 使用照片或激光雷达点云为城市等最大规模的项目生成详细的 3D 实景网格。 ContextCapture Center具有强大的计算能力&#xff0c;可以轻松处理非常大的项目。它利用网格计算&#xff0c;通过在多台计算机上运行多个引擎并将它们关联到单个作业队列…

261页10万字政务服务一网通办平台建设方案(word)

目 录 第1章 项目建设概述 1.1 建设背景 1.2 建设意义 1.3 现状分析 1.4 建设目标 1.4.1 政务服务标准化 1.4.2 政务服务精准化 1.4.3 政务服务便捷化 1.4.4 政务服务平台化 1.4.5 政务服务协同化 1.5 建设原则 1.6 建设内容 1.7 编制依据 &#x…

前端本地存储方案-localForage

1 前言 前端有多种本地存储方案可供选择&#xff0c;以下是其中一些常见的方案&#xff1a; Cookie&#xff1a;Cookie是一种小型的文本文件&#xff0c;可以在浏览器中存储少量数据。Cookie通常用于存储会话信息或用户偏好设置等数据&#xff08;只能存储少量数据&#xff0…

动态规划-数字三角形模型

title: 数字三角形模型 date: 2023-05-10 14:26:11 categories: Algorithm动态规划 tags:动态规划数字三角形 数字三角形 Number Triangles 题目描述 观察下面的数字金字塔。 写一个程序来查找从最高点到底部任意处结束的路径&#xff0c;使路径经过数字的和最大。每一步可…

Cy5.5-聚乙二醇-羟基;PEG2000;Cy5.5-PEG-OH结构式以及相关信息介绍

中文名称Cy5.5-聚乙二醇-羟基 英文名称Cy5.5-PEG-OH 性状&#xff1a;蓝色或深蓝色固体或粘性液体&#xff0c;取决于分子量 溶剂&#xff1a;溶于水、氯仿、DMSO等常规性有机溶剂 激发/发射波长&#xff1a;655nm/678nm 分子量PEG:1k、2k、3.4k、5k其他分子量可以制定 分…

vue3 - 实现文字横向滚动 / 垂直翻滚功能组件,类似喇叭广告、公告、跑马灯的文字滚动效果(详细组件源码与注释,一键复制开箱即用!)

效果图 在 vue3.js 项目中,完成了文字横向 / 纵向自动重复滚动效果组件,支持设置滚动区域宽高、背景色、展示条数、滚动间隔、横向纵向-方向切换等等,丝滑流畅! 无任何第三方插件依赖,详细的示例及注释,轻松一键复制组件源码开箱即用! 第一步 创建文字滚动组件TextSc…