目录
只在本类中应用qss,子类不继承qss样式
很多情况下,给QWidget设置了qss,你会发现继承自QWidget的部件好像都继承了它的qss,如果不想继承的话,如下例一样设置qss即可!
//qss设置
.QPushButton{
border:1px solid rgb(143,143,143);
background-color:white;
color:black;
}
当使用同一个类,想要一部分的部件是指定的qss样式
如下例代码,使用 [ ] 括起来的,使用键值对的方式。 ps:这里可以设置多个为指定的qss样式,只需要部件设置Property,和qss设置的匹配就可以
//qss设置
QPushButton[type=memberBtn]{
border:1px solid rgb(143,143,143);
background-color:white;
color:black;
}
//然后设置其属性为这个
QPushButton* btn = new QPushButton(this);
btn->setProperty("type", "memberBtn");
当使用同一个类,想要设置指定对象名称的qss样式
如下例代码,使用 # 符号,后面跟着objectName; ps:注意这里是指部件设置了objectName的部件才会生效qss。部件的objectName不能重复
//qss设置
QPushButton#memberBtn{
border:1px solid rgb(143,143,143);
background-color:white;
color:black;
}
//设置指定的部件应用
QPushbutton* btn = new QPushbutton(this);
btn->setObjectName("memberBtn");
QListWidget
QListWidget
{
outline:0px; //去除item选中时的虚线框
}
QListWidget::item
{
height:40; //item高度
}
QListWidget::item:hover
{
background: red; //悬停时item背景颜色
}
QListWidget::item:selected
{
background: rgb(170, 170, 170);//选择item后的背景颜色
border:1px solid white; //选择item后的边框效果:大小,样式,颜色
}
QTableWidget
QHeaderView::section
{
color:black; //设置表头文字颜色
background-color:#D7D7D7; //设置表头背景颜色
border:1px solid #AAAAAA; //设置表头边框
}
QPushButton
QPushButton
{
color: white; //文字颜色
background: rgb(85, 85, 85); //按钮背景
border-radius: 4px; //边框半径,边框圆角效果
}
QPushButton:hover
{
color: white; //悬停在按钮上的文字颜色
background: rgb(85, 85, 85); //悬停在按钮上的按钮背景
}
QPushButton::pressed
{
padding-left: 2px; //左内边距,效果看上去文字产生的细微移动,达到用户按下的效果增强
padding-top: 2px; //右内边距
}
QPushButton:checked
{
background:rgb(220,220,220);//按钮选中状态背景色,需要代码设置setCheckable(true)才能生效
}