一、样式表语法:该语法和HTML CSS基本是一致的,QT的样式表对大小写不敏感,但是对类名、对象名和属性名敏感。
QTextEdit { background:yellow }
QPushButton { color: green }
1、样式规则
样式规则=选择符+定义。选择符确定哪些窗口部件受规则影响,定义说明在窗口部件上应用哪些属性。
几个选择符可以使用一个定义,使用逗号隔开。如:QPushButton,QCheckEdit,QComboBox { color: read }
定义由一个或多个属性和值对组成,中间用分号隔开,如:
QPushButton{ color: red;background-color;white }
3、子控件
对于复杂的控件,可以访问它的子控件。如QComboBox上的下拉按钮,QSpinBox上的向上和向下箭头。如:
QComboBox::drop-down{ image:url(myarrow.png))//::是CSS3中的伪元素。
4、伪状态
选择符可以包含伪状态来表示窗口部件的状态。伪状态在选择符之后,以冒号分隔,下面定义了当鼠标在QPushButton上悬停时的规则:
QPushButton:hover{color:white}
5、冲突解决
当不同规则应用到相同的属性时,样式表就产生了冲突。在这种情况下,特定的规则比通用的规则优先;伪状态比没有伪状态的优先;如果级别相同,则最后一个规则优先。冲突解决按照CSS2规范进行。
6、层叠
样式表可以在QApplication级别设置,也可以在父窗口部件,子窗口部件级别设置。实际应用样式时,则合并这几个级别的样式。当有冲突时,窗口部件自身的样式优先使用,接下来的是父窗口部件,祖先窗口部件,依此类推。
7、盒子模型
窗口部件和子窗口部件 支持背景、边框、边距、填衬。