Qt 之 样式表的使用——样式选择器(上篇)

本文是Qt样式表系列的上篇,详细介绍了通用选择器、类型选择器、属性选择器和类选择器的用法,通过丰富的示例解释了如何设置和应用这些选择器,帮助读者理解Qt中样式选择器的使用技巧。
摘要由CSDN通过智能技术生成

一、简述

时隔上一篇文章已经十多天没有更新博客了,实在惭愧,这些天也都在忙活着各种事情。不过时间还是海绵中的水,挤一挤还是有的。

今天继上篇Qt 之 样式表的使用之设置样式的方法 ,来详细谈一谈Qt中样式选择器的一些用法。

经过之前对样式选择器的理解以及查阅Qt文档,整理了一下样式选择器的用法。本篇文章篇幅较长(辛辛苦苦花了三个晚上的时间测试样式、截取效果图、编写文章╮(╯▽╰)╭),对每种样式选择器进行了详细介绍以及详细的示例(上篇中先介绍前四种样式选择器,后三种将在下篇中介绍)。

二、样式选择器

我们先看一下Qt文档中对于不同选择器的解释:

这里写图片描述

可以在Qt助手中输入 The Style Sheet Syntax 然后查看 Selector Types


我们可以看到Qt有7种样式选择器,对于不同样式选择器也有相应的解释,那么下面我就给大家简单讲一讲这几种选择器的用法。

(1)、通用选择器(Universal Selector)

这里写图片描述

我们可以看到文档的解释:适用于所有的控件()。

A、 *{“样式”}

比如我们在样式文件style.qss中写了这么一句 * {color:red}; ,那么加载这个样式文件的窗口上所有部件的文字字体颜色都为红色,所以说如果使用 *{“样式”},那么 {“”} 中的样式将生效于全局。我们一般用于设置全局的通用属性,比如全局的字体的颜色,大小,字体格式等。

B、 作用域 *{“样式”}

这里写图片描述

看上面第一行样式,在 * 前加上了QStackedWidget ,这有什么用呢,我们看一下效果。

这里写图片描述

我们看到QToolButton字体是黑色,而QPushButton字体为红色,这样就很好理解了,因为QPushButton在QStackedWidget 中,而QToolButton在最外层Widget中,所以我们这里使用 QStackedWidget *{color:red;} 限制了样式的作用域,只局限于设置QStackedWidget 中所有控件的样式。


既然 *{“样式”} 可以设置全局的样式,那么我设置了全局字体为红色之后,还可以单独设置某一个控件的字体为其他颜色吗?

这当然是可以的,下面我给QPushButton单独设置了 color:blue;样式,而QToolButton不设置任何样式,我们看到QPushButton字体确实是蓝色,而QToolButton字体为全局设置的红色。

这里写图片描述


(二)、类型选择器(Type Selector)

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值