Qt加载样式文件

封装

void XXXSystem::initQssStyle(QColor color)
{
    QString cssStr;
    if (color == Qt::white)
        cssStr = ":/qss/flatwhite.css";
    else if (color == Qt::black)
        cssStr = ":/qss/psblack.css";
    else
        cssStr = ":/qss/lightblue.css";

    //加载样式表
    QString qss;
    QFile file(cssStr);

    if (file.open(QFile::ReadOnly))
    {
        //用readAll读取默认支持的是ANSI格式
        //如果不小心用creator打开编辑过了很可能打不开
        qss = QLatin1String(file.readAll());

        QString paletteColor = qss.mid(20, 7);
        qApp->setPalette(QPalette(QColor(paletteColor)));
        qApp->setStyleSheet(qss);
        file.close();
    }
}

调用

// 蓝色风格
this->initQssStyle(Qt::blue);
// 白色风格
this->initQssStyle(Qt::white);
// 黑色风格
this->initQssStyle(Qt::black);

你可能感兴趣的:(QT,qt,开发语言)