学习Qss--Brush类型介绍

本文详细介绍了Qt中颜色设置的多种格式,包括rgb、rgba、hsv、hsva及16进制表示,同时提供了Qt支持的颜色名称列表。此外,还探讨了Qt中的Gradient Brush,用于实现线性渐变、径向渐变和锥形渐变的效果,并通过具体代码示例展示了如何在QTextEdit中应用这些渐变。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


Brush一般用来设置颜色,其取值有3种,分别时Color,Gradient和PaletteRole

一、Color

color本身又支持很多格式,列举所有格式,如下:
rgb(r,g,b):每个数字表示每个通道的值,依次分别时红绿蓝;
rgba(r,g,b,a):与rgb相同,a代表alfa通道,是一个范围0-1的浮点数,表示透明度,1表示不透明,0表示完全透明;
hsv(h,s,v)
hsva(h,s,v,a)
#rrggbb:16进制表示的rgb值,每个值占两位,但如果每个通道的两位都一样,可以简写为#rgb,例如#66FFAA可以简写成#6FA,并且大小写不敏感;
name:直接指定颜色,Qt中可取的颜色列表如下:

名称颜色
aqua浅绿色
black黑色
blue蓝色
fuchsia紫红色
gray灰色
green绿色
lime绿黄色
maroon褐红色
navy深蓝色
olive橄榄绿
orange橙色
purple紫色
red红色
sliver银色
teal青色
white白色
yellow黄色

二、Gradient

可实现渐变效果,三种取值:

取值效果
qlineargradient线形渐变
qradialgradient径向渐变
qconicalgradient锥形渐变
它们分别对应了Qt的3个类,QLinearGradientQRadialGradientQConicalGradient,参数可以参考它们的函数。
举例
QTextEdit
{
	border: 2px solid red;
	background-color: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 1, stop: 0 #ace, stop: 0.4 #f96, stop: 1 #ace);
	background-clip: margin;
	font: normal normal 30px "微软雅黑";
}

在这里插入图片描述

QTextEdit
{
	border: 2px solid red;
	background: qradialgradient(cx: 0, cy: 0, radius: 1, fx: 0.5, fy: 0.5, stop: 0 #ace, stop: 1 #f96);
	background-clip: margin;
	font: normal normal 30px "微软雅黑";
}

在这里插入图片描述

QTextEdit
{
	border: 2px solid red;
	background: qconicalgradient(cx: 0.5, cy: 0.5, angle: 30, stop: 0 #ace, stop: 1 #f96);
	background-clip: margin;
	font: normal normal 30px "微软雅黑";
}

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贝勒里恩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值