控件样式
qss的语法与css基本一致,为某个控件(一般控件都是继承自QWidget)设置样式可以这样写:
selector
{
attribute_1:value_1;
attribute_2:value_2;
}
selector的主要用法:
- classname 用控件类名作为selector,这种主要用在控件之间可以用类名来区别的情况下。
QPushButton{
border-radius:2px;
color:#FF0000;
}
QLineEdit{
max-width:20px;
min-width:20px;
}
- classname + #objectname 类名和属性名称,这种主要用在界面上有多个相同的控件,但又需要各自控件有不同的属性,在代码中为需要设置样式的控件用setobjectname方法加以区别。
QPushButton #tabButton{
border-bottom:2px solid #FF0000;
font-weight:bold;
}
QPushButton #refresh{
border:0px;
border-radius:2px;
}
- 派生选择 classname drivedclass{} 要求classname 是 drivedclass的父类,该样式只对drivedclass 这种控件有效果
basewidget QPushButton{
color:#FF0000;
}
- 属性选择 classname[property=value]{} 其中property是classname 中用setproperty设置的属性,当满足这一属性条件时候显示这种样式,如果在运行的时候属性变了,需要重新加载样式,用classname->setStyle()重新加载样式。
QPushButton[state="2"]{
border:0px;
border-radius:0px;
}
网友评论