【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)创建全局样式

相关推荐
Sarvartha4 小时前
final 关键字
java·开发语言
fpcc4 小时前
c++编程实践—堆和栈越界调试
c++
程序员Sunday4 小时前
JavaScript 事件循环面试题,宏任务与微任务怎么执行|Sunday面试指南
开发语言·javascript·面试·校招·事件循环·程序员sunday
Quz5 小时前
QML 动画选择:GIF与Lottie 的区别,以及 Qt 6.8 与 6.11 的 Lottie 实现差异
qt
zhangzeyuaaa5 小时前
Ruby 多线程、GVL(GIL)与 Mutex 完全指南
开发语言·前端·ruby
weiabc5 小时前
MSYS2 UCRT64 + g++ C++ 中文输出乱码 完整全过程
c++
谢亮_vipxieliang6 小时前
用 PHP 构建轻量级 REST API:从路由到鉴权的完整实践
开发语言·后端·php
思无邪666 小时前
用 AI 做 JS 逆向:从抓包到复现的完整方法论
开发语言·javascript·人工智能
灯澜忆梦6 小时前
【面向对象编程C++】| 基础语法
java·c++·算法
H.莓飛7 小时前
【数据结构】二叉树_OJ题
linux·开发语言·数据结构·算法