Qt探索之路——QSS的应用

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中改。(后续跟进)

posted @ 2016-12-23 13:59  shawn06  阅读(727)  评论(0编辑  收藏  举报