【qt】解决qt里编辑qss后失效问题(qt编码问题)

1、先创建qss文本stylesheet.qss

以按钮为例

cpp 复制代码
QPushButton
{
    background-color:rgb(240,255,255);
    color: rgb(0, 0, 2);
    border-style: outset;
    border-color: beige;
    border-radius: 10px;
}
 
/* hover按钮悬浮,鼠标悬浮在按钮上的状态,按钮颜色 */
 QPushButton:hover 
{
    background-color:rgb(14, 220, 0);
    border-radius: 10px;
    color: rgb(0, 0, 0);
}
 
 /* 鼠标按下按钮时的状态,按钮颜色 */
QPushButton:checked 
{
    background-color:rgb(14, 170, 79);
    border-radius: 10px;
    color: rgb(255, 255, 0);
}

补充说明:

如果是手搓的控件,需要先设置名字:

例如"closeButton"。

cpp 复制代码
QPushButton *closeBtn = new QPushButton();
closeBtn->setObjectName("closeButton");

qss里编辑:

cpp 复制代码
QPushButton#closeButton {
    background-color: red;
    color: white;
}

2、创建qss资源模块,如下图的结构

3、使用qss,可以在main.cpp里或者子界面初始化地方填写

cpp 复制代码
#include <QFile>

    /*****************************************/
    QString qss;
    QFile qssFile(":/qss/stylesheet.qss"); //文件编码选总是删除,可解决编辑qss失效问题    	
    qssFile.open(QFile::ReadOnly);
    if(qssFile.isOpen())
    {
        qss = QLatin1String(qssFile.readAll());
        qApp->setStyleSheet(qss);
        qssFile.close();
    }
    /*****************************************/

4、文件编码选总是删除,可解决编辑qss失效问题

相关推荐
孤廖18 分钟前
吃透 C++ 栈和队列:stack/queue/priority_queue 用法 + 模拟 + STL 标准实现对比
java·开发语言·数据结构·c++·人工智能·深度学习·算法
驰羽26 分钟前
[GO]GORM中的Tag映射规则
开发语言·golang
非凡的世界1 小时前
深入理解 PHP 框架里的设计模式
开发语言·设计模式·php
小龙报1 小时前
《算法通关指南---C++编程篇(3)》
开发语言·c++·算法·visualstudio·学习方法·visual studio
凤山老林1 小时前
排序算法:详解插入排序
java·开发语言·后端·算法·排序算法
郝学胜-神的一滴1 小时前
Effective STL 第5条:区间成员函数优先于单元素成员函数
开发语言·c++·程序人生·stl·软件工程
江公望2 小时前
Qt的QT_QPA_EGLFS_INTEGRATION环境变量浅解
linux·qt·qml
杨福瑞2 小时前
C语言数据结构:算法复杂度(2)
c语言·开发语言·数据结构
道之极万物灭2 小时前
Go基础知识(一)
开发语言·后端·golang
张晓~183399481212 小时前
碰一碰发视频 系统源码 /PHP 语言开发方案
开发语言·线性代数·矩阵·aigc·php·音视频·文心一言