Qt 利用Qss更换皮肤

1.不同的皮肤配置写在不同的.qss文件。

2.在main加载默认的皮肤文件  

#include "mainwindow.h"

#include <QApplication>
#include <QFile>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QFile qss_file(":/default.qss");
    if(!qss_file.open(QFile::ReadOnly))
    {
      //qDebug()<<"qss file open error";
    }
    qApp->setStyleSheet(qss_file.readAll());
    qss_file.close();

    MainWindow w;
    w.show();
    return a.exec();
}

3.更换皮肤,重新加载指定的皮肤文件qss。

void MainWindow::updateTheme()
{
    QFile qss_file(":/blue.qss");
    if(!qss_file.open(QFile::ReadOnly))
    {
      //qDebug()<<"qss file open error";
    }
    qApp->setStyleSheet(qss_file.readAll());
    qss_file.close();
}

 

posted @ 2020-01-19 17:34  ike_li  阅读(1358)  评论(0编辑  收藏  举报