Qt的布局管理和样式表

文章介绍了Qt中的布局管理,如何利用QLayout类及其子类进行界面排版,确保窗口大小变化时界面仍保持整齐。同时,讲解了样式表在自定义QtWidgets中的作用,详细阐述了边框、填充、内容等概念,并举例说明如何通过QSS(类似CSS)来改变控件的背景色、边框、字体等属性,提供了一些具体的状态应用示例。
摘要由CSDN通过智能技术生成

一、布局管理

对于一个完善的软件,布局管理却是必不可少的。无论是想要界面中部件有一个很整齐的排列,还是想 要界面能适应窗口的大小变化,都要进行布局管理。Qt中主要提供了QLayout类及其子类来作为布局管 理器,它们可以实现常用的布局管理功能

两个字总结:排版 (为了好看)

对于这个布局管理,那么是写的程序要完成这个布局

在使用这个布局的时候

一个大的布局,然后可以往里面添加子布局然后构成整体的布局,具体的代码实现可以在steup ui下面去
看,主要是通过
addWidget添加控件
addLayout添加布局

点一下空白的地方,然后随便选择一个布局,那么就整个窗口都布局好了

那么这样之后,改变窗口大小的时候,那么这个上面的空间也会跟着变化

本文福利,费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QT嵌入式开发,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击费领取↓↓

二、样式表

样式表是用来做什么的?

自定义Qt Widgets

使用样式表时,每个小部件都被视为具有四个同心矩形的框:空白矩形、边框矩形、填充矩形和内容矩 形。盒子模型对此进行了更详细的描述。

四个同心矩形(方箱模型)的概念如下:

margin:空白
padding:边框
Border:填充
Content:内容
//空白区域位于边框外,并且总是透明的。边框为部件提供了四周的框架

在QT助手中搜索,这个里面示例要去看一看,找找规律就能基本的使用这个东西

有很多实例可以参考,以button为示例,这里是直接右键点击的控件改变的样式表

添加资源:

background-image:背景图片
border-image:
image:

添加渐变:

color:字体的颜色
background-color:背景色
alternate-background-color:交替背景-颜色 看3.1
border-color:边框颜色
border-top-color:顶边框顶色
border-right-color:右边框右色
border-bottom-color:底边框底色
border-left-color:左边框颜色
gridline-color:网格线边框颜色 看3.1
selection-color:选择时颜色
selection-background-color:选择时的背景颜色

添加颜色:

同上渐变颜色解释

添加字体:

就是改变字体

这里用的语法其实就是CSS的语法,但是QT命名为QSS,下面基础用法

空件类名:状态
比如鼠标位于button上
指定样实对什么生效,这种要右键widget添加样式
三、详细示例内容
3.1tableWidget,交替背景,需要设置选上,才会生效
{
	属性:值1;
	属性:值2;
	.....
	属性:值N;
}

以下是一些控件的常用的状态
:checked button部件被选中
:disabled 部件被禁用
:enabled 部件被启用
:focus 部件获得焦点
:hover 鼠标位于部件上
:indeterminate checkbox或radiobutton被部分选中
:off 部件可以切换,且处于off状态
:on 部件可以切换,且处于on状态
:pressed 部件被鼠标按下
:unchecked button部件未被选中

比如鼠标位于button上

/*左到右 红到黑(渐变色)*/
QPushButton:hover{
background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0
rgba(255, 0, 0, 255), stop:0.6 rgba(0, 0, 0, 255));
}

指定样实对什么生效,这种要右键widget添加样式

#lineEdit{
background-color: rgb(48, 103, 255);
}
//前面加个#,要写对象名,不能写类型名字

本文福利,费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QT嵌入式开发,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击费领取↓↓ 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值