1、在同一级别的widget中,如果指定widget有设置样式表,则在qss对该样式表的设置无效,对比验证:
(StatusWidget未设置widget样式——运行截图)
(StatusWidget未设置widget样式——样式表截图)
(StatusWidget设置widget样式——运行截图)
(StatusWidget设置widget样式——样式表)
QWidget{
color: rgb(51, 51, 51);
background-color: rgb(215, 215, 215);
/*background-color:rgb(51,51,51);*/
border:0px;
}
/*******************************************************************************
** 函数名称:on_Frame_Theme1_Btn_clicked()
** 功能描述:实现主题切换,将样式表存储到单独的qss文件中
** 作者:Shawn Ji
** 创建日期:2016年12月20日
*******************************************************************************/
void serial::on_Frame_Theme1_Btn_clicked()
{
QFile file(":/resource/css/PanelWidget_1.css");
file.open(QFile::ReadOnly);
QString stylesheet = QLatin1String(file.readAll());
// ui->PanelWidget->setStyleSheet(stylesheet);
qApp->setStyleSheet(stylesheet);
file.close();
}
总结:针对之前遇到的在QSS文件中使用筛选器指定对象无效的解决方案,可以采用将不需要改动的同级控件的样式表属性进行设置,需要改动的则在QSS中改。(后续跟进)