QSS选择器总结
整理以备忘
通用选择器
*为通用选择器,作用在所有Widget
作用范围: 所有
使用及效果:
*{background-color: rgb(85, 170, 255);}
类型选择器
类名作为选择器
作用范围: 自身及其子类元素
使用及效果:
QString Stylesheet="QWidget{background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
QString Stylesheet="QPushButton{background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
类选择器
.+类名 作为选择器
作用范围: 自身
使用及效果:
QString Stylesheet=".QWidget{background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
ID选择器
#+objectName 作为选择器
作用范围: 指定objectName 的控件
使用及效果:
ui->widgetIn->setObjectName("SelectWidget");
QString Stylesheet="#SelectWidget{background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
属性选择器
[属性=属性值] 作为选择器
或
类名[属性=属性值] 作为选择器
作用范围: 属性值匹配的元素
使用及效果:
ui->pushButton_1->setProperty("Status","Select");
QString Stylesheet="QPushButton[Status=Select]{background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
// ui->pushButton_1->setProperty("Status","Select");
// ui->widgetIn->setProperty("Status","Select");
// QString Stylesheet="[Status=Select]{background-color: rgb(85, 170, 255);}";
// this->setStyleSheet(Stylesheet);
后代选择器
选择器+“空格”+后代选择器 作为选择器
作用范围: 元素的所有后代的指定元素
使用及效果:
QString Stylesheet="#widgetOut QPushButton{background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
子选择器
选择器+>+子选择器 作为选择器
作用范围: 元素的直接后代的指定元素
使用及效果:
QString Stylesheet="#widgetOut>QPushButton{background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
伪类选择器
选择器 : 状态 作为选择器
作用范围: 指定元素的特定状态
使用及效果:
QString Stylesheet="QPushButton:hover {background-color: rgb(85, 170, 255);}";
this->setStyleSheet(Stylesheet);
鼠标悬浮在按钮上变色。
其他支持的伪类 查看文档
子控件选择器
选择器 :: 子控件 作为选择器
作用范围: 复杂控件的子控件
使用及效果:
QString Stylesheet=""
"QComboBox::drop-down"
"{"
"background-color: rgb(85, 170, 255);"
"subcontrol-origin: padding;"
"subcontrol-position: right center;"
"}"
"QComboBox::down-arrow:hover"
"{"
"top: 1px;"
"left: 1px;"
"}"
"QComboBox::down-arrow"
"{"
"height: 12px;"
"width: 12px;"
"image: url(:/Down-Arrow16.png);"
"}";
this->setStyleSheet(Stylesheet);
其他支持的子控件的操作 查看文档