Qt设置样式表

Qt设置样式表

  • 一、官方参考API
  • 二、在Designer中使用样式表
  • 三、在Cpp代码中使用样式表
    • 1、部分 代码
  • 四、从文件中读取样式表
    • 1、函数 代码
    • 2、运行 结果

一、官方参考API

  • 原文:Styles sheets are textual specifications that can be set on the whole application using QApplication::setStyleSheet() or on a specific widget (and its children) using QWidget::setStyleSheet(). If several style sheets are set at different levels, Qt derives the effective style sheet from all of those that are set. This is called cascading.
  • 简述:
  • 整个应用程序 使用 QApplication::setStyleSheet()

  • 具体Widget(或者它的后代) 使用 QWidget::setStyleSheet()

  • 渲染规则: 如果在不同级别设置了几个样式表,QT将从所有设置的样式表中派生出有效的样式表。这就是所谓的层叠。

  • 帮助文档位置: Qt设置样式表_第1张图片

二、在Designer中使用样式表

  • 1 在Designer中选择对象,右键选择 改变样式表 Qt设置样式表_第2张图片
  • 2 在弹出框内 可以选择 上方快捷菜单 选择样式属性 Qt设置样式表_第3张图片
  • 3 结果 Qt设置样式表_第4张图片
  • 4 也可以输入样式属性 Qt设置样式表_第5张图片

三、在Cpp代码中使用样式表

1、部分 代码

//设置这个应用程序中 QPushButton 的对象 文字颜色:白色
qApp->setStyleSheet("QPushButton { color: white }");

//设置一个按钮的文字颜色 :蓝色
myPushButton->setStyleSheet("* { color: blue }");

//可以不完整的样式选择器
myPushButton->setStyleSheet("color: blue");

四、从文件中读取样式表

1、函数 代码

//复制到自己类中,替换此处的类名即可,即 MainWindow --》你的类名
//qss_path 是qss文件路径,可以是系统路径,也可是Qt的资源路径
void MainWindow::readStyleSheet(QString qss_path)
{
    QString allStyleSheet;
    QFile qssFile(qss_path);
    qssFile.open(QFile::ReadOnly);
    if (qssFile.isOpen())
    {
        allStyleSheet = QLatin1String(qssFile.readAll());
        this->setStyleSheet(allStyleSheet);

        qDebug() << qss_path + ": open successful!";
        //qDebug() << allStyleSheet;
        qssFile.close();
    }
    else
    {
        qDebug() << qss_path + ": open error";
    }
}

2、运行 结果

Qt设置样式表_第6张图片

你可能感兴趣的:(▼,技术之路-Qt,qt,开发语言,样式表,qss)