1、QSS概述
Qt样式表(Qt Style Sheets)是一种强大的机制.允许您定制widgets的外观,除了已经通过继承于QStyle之外。概念、术语和语法的Qt样式表大量的灵感来自HTML层叠样式表(CSS),但适应世界的小部件。
样式表可以设置文本规范,在整个应用程序使用QApplication::setStyleSheet()或在一个特定的窗口小部件(和子部件)使用QWidget::setStyleSheet()。如果有几个样式表设置在不同层次上,Qt的有效样式表来自于这些所有的设置。这就是所谓的级联。
好处:1.将功能设计和美学设计分开
2.CSS设计资源多,查找容易
CSS语法学习:http://www.w3school.com.cn/h.asp
注意:Qt样式表目前不支持自定义QStyle子类。
2、样式规则
1. 样式表单由一系列样式规则组成。每条规则可以分成两部分:选择器和声明
selector { attribute: value }选择器表示规则作用到哪些控件上;声明则详细说明了是什么规则。
2.Qt的样式表语法不区分大小写,所以color,Color,coLor,coloR都表示同样的颜色属性。但是指代类的类名的时候,是区分大小写的。除了“类名”,“对象名”,“Qt属性名”这三样东西是大小写敏感的外其他的东西都是大小写不敏感的,如color与Color代表同一属性。
3. 多个选择器可以并列使用,它们之间用逗号隔开,例如:
QPushButton,QLineEdit, QComboBox{ color: red }4.声明部分也可以有多个并列,之间用分号隔开。
3、选择器类别
1.一般选择器(selector)
-
-
- 通用类型选择器:* 会对所有控件有效果。
- 类型选择器:QPushButton 匹配所有QPushButton的实例和其子类的实例。
- 属性选择器:QPushButton[flat=”false”] 匹配所有QPushButton属性flat为false的实例。
- 类选择器: .QPushButton 匹配所有QPushButton的实例,但不包含其子类。
- ID选择器: QPushButton#okButton 对应Qt里面的objectname设置,使用这条CSS之前要先设置对应控件的objectname为okButton。
- 后裔选择器:QDialog QPushButton 匹配所有为QDialog后裔的QPushButton实例。
- 子选择器: QDialog > QPushButton 匹配所有的QDialog直接子类QPushB
-

QSS是Qt中用于定制控件外观的机制,类似HTML的CSS。它允许分离功能设计和美学设计,且语法灵感来自CSS。QSS支持选择器(如通用、类型、属性、类和ID选择器),子控件选择器(如子控件、伪状态)以及级联和继承规则。样式规则由选择器和声明组成,可应用于QApplication、父控件和子控件。冲突时,特定规则优先。QSS还涉及Box模型、对象属性设置及子控件的处理。了解QSS能帮助开发者更高效地自定义Qt应用程序的界面。
最低0.47元/天 解锁文章
3132

被折叠的 条评论
为什么被折叠?



