Qt设置样式表

一、官方参考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将从所有设置的样式表中派生出有效的样式表。这就是所谓的层叠。

  • 帮助文档位置: 在这里插入图片描述

二、在Designer中使用样式表

  • 1 在Designer中选择对象,右键选择 改变样式表 在这里插入图片描述
  • 2 在弹出框内 可以选择 上方快捷菜单 选择样式属性 在这里插入图片描述
  • 3 结果 在这里插入图片描述
  • 4 也可以输入样式属性 在这里插入图片描述

三、在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、运行 结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

太阳风暴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值