类型选择器:
格式
类名 { 属性: 值; },例如:
QWidget{background-color: red; }
这条语句表示, 所有的 QWidget 类和它的派生类的对象, 它们的背景色被设置为红色。
类选择器:
格式
.类名 { 属性: 值; }
这里的类名与类型选择器中的类名一样, 不同的是, 类选择器的类名前面有一个( . ), 这种
选择器只会匹配该类的所有对象, 而不会匹配其派生类的对象。例如:
.QWidget{background-color: blue; }
就只会改变QWidget的背景色,如果中有派生类,比如QPushButton,就不会改变。
demo:
在Qt Designer中放置两个QWidget,两个QPushButton,各部件的层次关系如图:
1、将最顶层的QWidget的样式表设置为:
QWidget{background-color: lightgreen;}
由于QPushButton是QWidget的派生类,所以上面的界面中,所有的部件都被改变了背景色。
2、将最顶层的QWidget的样式表设置为:
.QWidget{background-color: lightgreen;}
这里使用了类选择器,单独设置了QWidget的背景色,它的派生类QPushButton并没有被设置。