文章目录
简介
为了书写方便, 文中一律使用 Qss 代替 Qt style sheet.
首先来看 Qt 的官方介绍: 除了子类化 QStyle 以外, Qss 是一个非常强大的用于自定义控件外观的机制. 它的概念,术语以及语法都是受到了 HTML CSS 的启发(实际上就是 CSS 的语法), 但可以适应全局窗口部件(这一句我没明白是什么意思).就是说, Qss 是用来设置界面样式的, 设置的方法就是类似于 CSS,通过以一定规则组织的字符串来给界面设置样式, 而不用我们调用控件对象的接口或子类化 QStyle 去设置样式. 这种组织字符串的规则就是它的语法, 以下的总结也是主要讲一些 Qss 的语法, 包含少量的经验以及官方文档中没有说明的内容.
个人认为使用 Qss 的好处:
(1) 可读性高并且非常直观,便于设置界面样式;
(2) 在每个平台上都有相同的显示效果.
(3)可以在界面代码中省去与显示效果相关的大量代码,将界面逻辑独立出来.
(4) 在界面风格(配色, 字体等)改变的情况下, 可以不用修改c++源码就可以实现.
语法
基本语法
样式表由一系列的样式规则组成。一条样式规则由一个选择器和一个声明语句组成,选择器指明了哪个(或者说是哪种)控件将会受规则影响,而声明语句则指明了哪些属性会设
置到这个(这些)控件. 语法如下:
selector {
attribute