Ubuntu上qt使用SSH样式表

news2024/9/21 23:40:17

SSH样式表

如果学习过web的同学都知道,我们在学习HTML的时候会用到样式表,我们使用它来更改我们的颜色、大小、背景等等。上到后面,老师会说:我们如果在HTML文件中编辑太多的样式,就会让代码看起来非常的繁琐,所以我们开始学习了CSS样式,那么在QT中我们也同样会使用。那我们就开始学习吧!‘


1.编辑样式

#include "widget.h"
#include "ui_widget.h"
#include"QLabel"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    //ui->setupUi(this);
    this->setStyleSheet("QWidget {background-color:red}");
    QLabel *label = new QLabel(this);
    label->setGeometry(0,0,100,100);


    QLabel *label1 = new QLabel(this);
    label1->setGeometry(100,100,100,100);
    label1->setObjectName("label1");

    this->resize(800,800);
    label->setStyleSheet("QLabel {background-color:blue}");
}

Widget::~Widget()
{
    delete ui;
}

他的运行结果是这样的:

我们要如何使用SSH样式表来实现呢?

2.创建样式表文件

我们新建一个资源文件,创建好后我们将我们的样式文件写入到这个样式表中。

QWidget {background-color:red}
QLabel {background-color:blue}
QLabel#label1 {background-color:green}

我们写完之后运行一下,发现什么都没有!!!!!!

这是因为这个样式表是文件,我们如果要使用这个文件,我们就要读文件:(main.cpp文件)
 

#include "widget.h"
#include"QFile"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QFile file(":/style.qss");
    if(file.exists()){
        file.open(QFile::ReadOnly);
        QString styleSheet = QLatin1String(file.readAll());
        qApp->setStyleSheet(styleSheet);
        file.close();
    }

    Widget w;
    w.show();
    return a.exec();
}

然后就好啦!!!

·············································································································

总结

我们使用样式表,首先

1.创建样式表

2.定义UI         比如:按钮、label等

3.编写样式表

4.在main.cpp文件中读文件

好了  下课!!!!!!!!!!!!!!!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2094439.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Obsidian个人知识库搭建流程

Obsidian的安装 Obsidian官网 个人博客搭建 xlog【使用xlog搭建个人博客Step by Step】 知乎【使用xlog搭建个人博客Step by Step】

实习的一点回顾Gradle

1 项目目录下执行 ./gradlew build&#xff0c;用.gradlew自动构建 首先有一个gradlew&#xff08;linux&#xff09;或者gradlew.bat&#xff08;win&#xff09;是用来检查java配置&#xff0c;环境配置之类的东西 然后去启动gradle/wrapper/gradle-wrapper.jar去检测本地gra…

【Google Play版】bilibili 3.19.2最新国际版(如何鉴别是否官方?)

相信玩 B 站的小伙伴也不少&#xff0c;国内版确实太臃肿了&#xff0c;已经“变质”了。 这是主界面&#xff0c;我没有做任何设置&#xff0c;刚装好就是这样&#xff1a; 摘自 Play 最新的评论&#xff1a; “3.19非常好&#xff0c;解决了我之前两个痛点。一是首页的自动…

基于PCA-SVM的人脸识别系统(MATLAB GUI)

matlab人脸识别系统(GUI),PCASVM方法 源码详细注释以及适配于本系统的5k字的理论资料&#xff08;方便学习&#xff09; GUI里的人脸识别算法&#xff1a;PCA-SVM 功能&#xff1a;利用ORL数据库&#xff0c;进行训练&#xff0c;测试&#xff0c;并可对单张图片进行识别 两个界…

ArrayList的详细使用教程

ArrayList实现了List接口&#xff0c;是顺序容器&#xff0c;即元素存放的数据与放进去的顺序相同&#xff0c;允许放入null元素&#xff0c;底层通过数组实现。除该类未实现同步外&#xff0c;其余跟Vector大致相同。每个ArrayList都有一个容量(capacity)&#xff0c;表示底层…

vscode写markdown(引入html及css语法)

vscode写markdown 下载插件插入代码markdown中引入html和css语法导出pdf 下载插件 Markdown All in OneMarkdown Preview EnhancedPaste Image 插入代码 afdfafamarkdown中引入html和css语法 呵呵 用ctrlshiftp 搜索"Markdown Preview Enhanced:Customize CSS"在…

个人旅游网(2)——功能详解——用户登录注册

文章目录 一、用户登录1.1、接口详解1.1.1、isLogged (判断用户是否登录)1.1.2、find-by-telephone&#xff08;输入手机号时校验手机号是否注册&#xff09;1.1.3、send-message&#xff08;发送验证码&#xff09;1.1.4、login-by-telephone&#xff08;登录按钮&#xff09;…

Guarded Suspension 保护性暂定模式 以及嵌套死锁问题

多线程交互时&#xff0c;满足条件才去执行&#xff0c;否则阻塞一直到满足条件。当然可以用wait/notify实现。 本文用JUC包下的reentrantlock和其条件变量来完成。 文章目录 首先定义Predicate 和GuardAction&#xff1b;然后定义Blocker如何使用完整代码如下嵌套死锁问题 首…

PWMI模式测频率占空比

开启时钟 GPIO 时基单元 输入捕获初始化部分 配置两个IC通道同时捕获同一个引脚的模式 //快捷将电路配置成PWMI标准的标准结构&#xff0c;只支持通道1、2不支持3、4 //只需要传入一个通道的函数&#xff0c;此函数同时会把另一个通道配置为相反的配置&#xff0c;实现PWMI…

python读取txt文本文件-批量更改mysql数据库中一批用户的用户名的python脚本保存及转存关于OSI的七层模型和TCP/IP四层模型

一、python读取txt文本文件-批量更改mysql数据库中一批用户的用户名的python脚本保存 做一个简单的事&#xff1a;使用python读取一个txt文件&#xff0c;里面存储着N行用户id&#xff0c;需要一行行读取后再读取另一个存储用户昵称的txt文件&#xff0c;判断昵称是否有重复&am…

已知一个有序表为(13,18,24,35,47,50,62,83,90,115,134),当二分检索值为90的元素时,检索成功需比较的次数是( )。A.1

已知一个有序表为&#xff08;13&#xff0c;18&#xff0c;24&#xff0c;35&#xff0c;47&#xff0c;50&#xff0c;62&#xff0c;83&#xff0c;90&#xff0c;115&#xff0c;134&#xff09;&#xff0c;当二分检索值为90的元素时&#xff0c;检索成功需比较的次数是&a…

【Python系列】text二进制方式写入文件

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

C++笔记---模板初阶

1. 初识模板 模板是什么 模板就是一种通用的模型&#xff0c;只要我们给出模板&#xff0c;编译器就可以自动帮助我们自动生成函数或类。 模板又分为函数模板和类模板。 模板的意义 我们在使用函数重载的过程中&#xff0c;常常会遇见下面的情况&#xff1a; void Swap(i…

业务资源管理模式语言03

示例&#xff1a; 图3 表示了IdentifyTheResource 模式的实例&#xff0c;其中“Product”扮演“Resource”角色。 图3 ——IdentifyTheResource 模式的实例 下一个模式&#xff1a; 完成IdentifyTheResource&#xff0c;下一个模式是QualifyTheResource&#xff08;2&#…

使用 nuxi clean 命令清理 Nuxt 项目

title: 使用 nuxi clean 命令清理 Nuxt 项目 date: 2024/9/1 updated: 2024/9/1 author: cmdragon excerpt: nuxi clean 命令是管理和维护 Nuxt 项目的重要工具,它帮助你快速清理生成的文件和缓存,确保开发环境的干净。通过定期使用这个命令,你可以避免由于缓存或生成文件…

python 天气与股票的关系--第3部分,建立模型

起因(目的): 继续瞎折腾。 过程: 假设有下面这些规则: 天气中的温度&#xff0c; 如果最高温度大于 36&#xff0c; 那么就是坏天气。如果最低温度小于 5&#xff0c; 那么也是坏天气。如果下雨, 下雪&#xff0c; 那么也是坏天气。其他情况为 好天气 import pandas as pd…

AVL树建立

AVL树是在二叉搜索树基础上实现的&#xff0c;与二叉搜索树不同的是&#xff0c;AVL树的左右子树高度相差不超过1. AVL树的旋转 大致分为四类&#xff1a; 单旋&#xff1a; 左左——右旋&#xff1a;使平衡因子为-2的父节点与左子树相连&#xff0c;该节点的左节点与左孩子…

spring boot 项目 prometheus 自定义指标收集和 grafana 查询--方法耗时分位数指标

auth author JellyfishMIX - github / blog.jellyfishmix.comLICENSE LICENSE-2.0 说明 网上有很多 promehteus 和 grafana 配置&#xff0c;本文不再重复&#xff0c;只介绍自定义部分。目前只介绍了分位数指标的收集和查询&#xff0c;常用于方法耗时的指标监控。 自定义…

Python函数(进程和线程)

Python基础语法文章导航&#xff1a; Python基础&#xff08;01初识数据类型&变量&#xff09;Python基础&#xff08;02条件&循环语句&#xff09;Python基础&#xff08;03字符串格式化&运算符&进制&编码&#xff09;Python基础&#xff08;04 基础练习…

【媒体人必备】免费的 AI 配音神器,还有黑神话悟空的配音

【媒体人必备】免费的 AI 配音神器&#xff0c;还有黑神话悟空的配音 在短视频风靡全球的时代&#xff0c;TikTokVoice 提供了一个功能强大、操作简单的在线文字转语音工具&#xff0c;支持多种语言和热门AI配音角色。本文将带你了解这个工具的独特之处&#xff0c;以及如何利用…