【Qt】子控件选择器

子控件选择器

有些控件内部包含了多个 "⼦控件" . ⽐如 QComboBox 的下拉后的⾯板, ⽐如 QSpinBox 的上下按钮等。

可以通过⼦控件选择器 :: , 针对上述⼦控件进⾏样式设置.

参考⽂档 Qt Style Sheets Reference 中 List of Sub-Controls

例子:设置下拉框的下拉按钮样式

(1)设置一个下拉框,并添加几个选项

(2)创建 resource.qrc , 并导⼊图⽚

(3)编写全局样式

  • 使⽤⼦控件选择器 QComboBox::down-arrow 选中了 QComboBox 的下拉按钮.

  • 再通过 image 属性设置图⽚.

伪类选择器

伪类选择器, 是根据控件所处的某个状态被选择的. 例如按钮被按下, 输⼊框获取到焦点, ⿏标移动到某个控件上等.

  • 当状态具备时, 控件被选中, 样式⽣效.
  • 当状态不具备时, 控件不被选中, 样式失效.

使⽤ : 的⽅式定义伪类选择器

常用的伪类选择器:

伪类选择器 说明
:hover ⿏标放到控件上
:pressed ⿏标左键按下时
:focus 获取输⼊焦点时
:enabled 元素处于可⽤状态时
:checked 被勾选时
:read-only 元素为只读状态时

这些状态可以使⽤ ! 来取反. ⽐如 :!hover 就是⿏标离开控件时, :!pressed 就是⿏标松开时, 等等.

例子:设置按钮的伪类样式

(1)设置一个按钮

(2)创建全局样式

相关推荐
故事不长丨28 分钟前
C#定时器与延时操作的使用
开发语言·c#·.net·线程·定时器·winform
hefaxiang30 分钟前
C语言常见概念(下)
c语言·开发语言
“αβ”36 分钟前
MySQL表的操作
linux·网络·数据库·c++·网络协议·mysql·https
欧阳天风40 分钟前
js实现鼠标横向滚动
开发语言·前端·javascript
十五年专注C++开发1 小时前
Asio2: 一个基于 Boost.Asio 封装的高性能网络编程库
网络·c++·boost·asio·asio2
gcfer1 小时前
CS144 中的C++知识积累
c++·右值引用·智能指针·optional容器
yue0081 小时前
C# Directory的用法介绍
开发语言·c#
雨落秋垣2 小时前
手搓 Java 的用户行为跟踪系统
java·开发语言·linq
Bona Sun2 小时前
单片机手搓掌上游戏机(二十)—pico运行doom之编译环境
c语言·c++·单片机·游戏机
爱丽_2 小时前
深入理解 Java Socket 编程与线程池:从阻塞 I/O 到高并发处理
java·开发语言