千家信息网

Qt通用方法及类库是什么

发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,这篇文章主要讲解了"Qt通用方法及类库是什么",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Qt通用方法及类库是什么"吧!函数名 //设置全局样式
千家信息网最后更新 2025年01月24日Qt通用方法及类库是什么

这篇文章主要讲解了"Qt通用方法及类库是什么",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Qt通用方法及类库是什么"吧!

函数名

    //设置全局样式    static void setStyle(QUIWidget::Style style);    static void setStyle(const QString &qssFile, QString &paletteColor, QString &textColor);    static void setStyle(const QString &qssFile, QString &textColor,                         QString &panelColor, QString &borderColor,                         QString &normalColorStart, QString &normalColorEnd,                         QString &darkColorStart, QString &darkColorEnd,                         QString &highColor);    //根据QSS样式获取对应颜色值    static void getQssColor(const QString &qss, QString &textColor,                            QString &panelColor, QString &borderColor,                            QString &normalColorStart, QString &normalColorEnd,                            QString &darkColorStart, QString &darkColorEnd,                            QString &highColor);

函数体

void QUIHelper::setStyle(QUIWidget::Style style){    QString qssFile = ":/qss/lightblue.css";    if (style == QUIWidget::Style_Silvery) {        qssFile = ":/qss/silvery.css";    } else if (style == QUIWidget::Style_Blue) {        qssFile = ":/qss/blue.css";    } else if (style == QUIWidget::Style_LightBlue) {        qssFile = ":/qss/lightblue.css";    } else if (style == QUIWidget::Style_DarkBlue) {        qssFile = ":/qss/darkblue.css";    } else if (style == QUIWidget::Style_Gray) {        qssFile = ":/qss/gray.css";    } else if (style == QUIWidget::Style_LightGray) {        qssFile = ":/qss/lightgray.css";    } else if (style == QUIWidget::Style_DarkGray) {        qssFile = ":/qss/darkgray.css";    } else if (style == QUIWidget::Style_Black) {        qssFile = ":/qss/black.css";    } else if (style == QUIWidget::Style_LightBlack) {        qssFile = ":/qss/lightblack.css";    } else if (style == QUIWidget::Style_DarkBlack) {        qssFile = ":/qss/darkblack.css";    } else if (style == QUIWidget::Style_PSBlack) {        qssFile = ":/qss/psblack.css";    } else if (style == QUIWidget::Style_FlatBlack) {        qssFile = ":/qss/flatblack.css";    } else if (style == QUIWidget::Style_FlatWhite) {        qssFile = ":/qss/flatwhite.css";    } else if (style == QUIWidget::Style_Purple) {        qssFile = ":/qss/purple.css";    } else if (style == QUIWidget::Style_BlackBlue) {        qssFile = ":/qss/blackblue.css";    } else if (style == QUIWidget::Style_BlackVideo) {        qssFile = ":/qss/blackvideo.css";    }    QFile file(qssFile);    if (file.open(QFile::ReadOnly)) {        QString qss = QLatin1String(file.readAll());        QString paletteColor = qss.mid(20, 7);        getQssColor(qss, QUIConfig::TextColor, QUIConfig::PanelColor, QUIConfig::BorderColor, QUIConfig::NormalColorStart,                    QUIConfig::NormalColorEnd, QUIConfig::DarkColorStart, QUIConfig::DarkColorEnd, QUIConfig::HighColor);        qApp->setPalette(QPalette(QColor(paletteColor)));        qApp->setStyleSheet(qss);        file.close();    }}void QUIHelper::setStyle(const QString &qssFile, QString &paletteColor, QString &textColor){    QFile file(qssFile);    if (file.open(QFile::ReadOnly)) {        QString qss = QLatin1String(file.readAll());        paletteColor = qss.mid(20, 7);        textColor = qss.mid(49, 7);        getQssColor(qss, QUIConfig::TextColor, QUIConfig::PanelColor, QUIConfig::BorderColor, QUIConfig::NormalColorStart,                    QUIConfig::NormalColorEnd, QUIConfig::DarkColorStart, QUIConfig::DarkColorEnd, QUIConfig::HighColor);        qApp->setPalette(QPalette(QColor(paletteColor)));        qApp->setStyleSheet(qss);        file.close();    }}void QUIHelper::setStyle(const QString &qssFile, QString &textColor, QString &panelColor, QString &borderColor,                         QString &normalColorStart, QString &normalColorEnd,                         QString &darkColorStart, QString &darkColorEnd, QString &highColor){    QFile file(qssFile);    if (file.open(QFile::ReadOnly)) {        QString qss = QLatin1String(file.readAll());        getQssColor(qss, textColor, panelColor, borderColor, normalColorStart, normalColorEnd, darkColorStart, darkColorEnd, highColor);        qApp->setPalette(QPalette(QColor(panelColor)));        qApp->setStyleSheet(qss);        file.close();    }}void QUIHelper::getQssColor(const QString &qss, QString &textColor, QString &panelColor, QString &borderColor,                            QString &normalColorStart, QString &normalColorEnd,                            QString &darkColorStart, QString &darkColorEnd, QString &highColor){    QString str = qss;    QString flagTextColor = "TextColor:";    int indexTextColor = str.indexOf(flagTextColor);    if (indexTextColor >= 0) {        textColor = str.mid(indexTextColor + flagTextColor.length(), 7);    }    QString flagPanelColor = "PanelColor:";    int indexPanelColor = str.indexOf(flagPanelColor);    if (indexPanelColor >= 0) {        panelColor = str.mid(indexPanelColor + flagPanelColor.length(), 7);    }    QString flagBorderColor = "BorderColor:";    int indexBorderColor = str.indexOf(flagBorderColor);    if (indexBorderColor >= 0) {        borderColor = str.mid(indexBorderColor + flagBorderColor.length(), 7);    }    QString flagNormalColorStart = "NormalColorStart:";    int indexNormalColorStart = str.indexOf(flagNormalColorStart);    if (indexNormalColorStart >= 0) {        normalColorStart = str.mid(indexNormalColorStart + flagNormalColorStart.length(), 7);    }    QString flagNormalColorEnd = "NormalColorEnd:";    int indexNormalColorEnd = str.indexOf(flagNormalColorEnd);    if (indexNormalColorEnd >= 0) {        normalColorEnd = str.mid(indexNormalColorEnd + flagNormalColorEnd.length(), 7);    }    QString flagDarkColorStart = "DarkColorStart:";    int indexDarkColorStart = str.indexOf(flagDarkColorStart);    if (indexDarkColorStart >= 0) {        darkColorStart = str.mid(indexDarkColorStart + flagDarkColorStart.length(), 7);    }    QString flagDarkColorEnd = "DarkColorEnd:";    int indexDarkColorEnd = str.indexOf(flagDarkColorEnd);    if (indexDarkColorEnd >= 0) {        darkColorEnd = str.mid(indexDarkColorEnd + flagDarkColorEnd.length(), 7);    }    QString flagHighColor = "HighColor:";    int indexHighColor = str.indexOf(flagHighColor);    if (indexHighColor >= 0) {        highColor = str.mid(indexHighColor + flagHighColor.length(), 7);    }}

感谢各位的阅读,以上就是"Qt通用方法及类库是什么"的内容了,经过本文的学习后,相信大家对Qt通用方法及类库是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

0