1、通过 setStyleSheet 设置不同的样式。缺点是不同的样式分散在不同的代码中,无法集中管理。
2、通过切换属性的方法设置不同的样式。
可以将样式集中写在 qss 文件中,当然了,不同的属性的不同样式要注明,方法如下:
QPushButton#pbtn_view[property_name = "style_red"]
{
background:red;
}
QPushButton#pbtn_view[property_name = "style_blue"]
{
background:blue;
}
代码中,property_name,顾名思义,就是按钮的额外属性,该属性的值可以有“style_red”和"style_blue"。
设置按钮的属性的方法如下:
pbtn_view->setProperty("property_name", "sytle_red");
设置完属性之后,一定要加上如下代码:
pbtn_view->style()->unpolish(pbtn_view);
pbtn_view->style()->polish(pbtn_view);
作用是抹去旧的样式,涂上新的样式。
(SAW:Game Over!)