【qt】qss使用

news2024/11/16 6:51:59

1.按钮设置颜色

在这里插入图片描述

  ui->pushButton->setStyleSheet("QPushButton { color : red;}");

也可以通过rgb来设置
在这里插入图片描述
ff表示红色拉满,gb为0当然是红色
这只是针对pushbutton对象的控件设置的,如果我想设置所有的按钮空间都是一个颜色
在这里插入图片描述
这是通过设置界面中子控件然后经过选择器选择QPushButton这个控件来设置的

2.全局样式

在这里插入图片描述
直接在main.cpp中设置所有的QPushButton的颜色
在这里插入图片描述

提出两个问题
1.如果设置了全局样式,然后再某个控件里面设置了其他样式,会怎么样?
比方说我们可以针对一个按钮设置的字体的像素(全局样式设置了颜色)
在这里插入图片描述
会形成叠加。
2.如果全局样式,然后在某个控件里面设置了同样样式,比方颜色
在这里插入图片描述
发现如果全局样式和某个控件样式冲突,会选择直接局部的控件样式选择

3.选择器的用法

1.类型选择器,上面讲过的就是类型选择器,演示一下
在这里插入图片描述
对于类型控件的子控件也生效
2.类选择器,他不会选择子类,如果是QWidget,在窗口中的子类控件不会设置
在这里插入图片描述
按钮属于子控件
3.id选择器,在开发中,期望不同的控件样式不同,此时就需要使用id选择器了
在这里插入图片描述
类型选择#+控件id+设置信息,如果类型选择器和id选择器设置类型冲突,则选择就近的及id选择器设置内容
4.并集选择器
将不同的控件设置系统属性,比方说把按钮,标签,文本框颜色设置一样
在这里插入图片描述

#include "widget.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
   // a.setStyleSheet("QPushButton {color :red;}");//类型选择器
  //  a.setStyleSheet(".QWidget {color :red;}"); //类选择器,子类不会设置

    //  QString str="QPushButton {color :red;}";

     // str+="#pushButton_2 {color :black;}";//id选择器
     QString str="QPushButton,QLineEdit,QLabel {color :pink;}";//并集选择器
    a.setStyleSheet(str);

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

5.子控件选择器
使用下拉框QComboBox的子控件选择器给下拉按钮设置图片
首先创建一个下拉框
在这里插入图片描述
导入替换子控件的图片
在这里插入图片描述
在这里插入图片描述
对比效果:
在这里插入图片描述
6.伪类选择器
前面介绍的选择器,都是选中"控件"伪类选择器,选中的是控件的"状态""符合一定状态条件"的控件
使用伪类选择器对一个控件的不同状态进行设置,比方一个按钮鼠标没点击是红色,鼠标移动到该按钮内部变为粉色,按下变蓝色

伪类选择器说明
:hover鼠标放到控件上
:pressed鼠标左键按下
:focus获取输入焦点时
:enabled元素处于可用状态时
:checked被勾选时
:read-only元素为只读状态时

在这里插入图片描述

4. 盒子模型

请添加图片描述
1.设置内边框:表示文字和边框的距离,用标签举例子
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
2.设置外边框
在这里插入图片描述

5.登录界面设计

1.使用控件

在这里插入图片描述

2.垂直布局

在这里插入图片描述

3.调整大小

在这里插入图片描述
将minimumsize和maxmumsize的高度都设置为50,在高度方向将按钮,两个lineedit拉伸一下

4.导入背景图片

在这里插入图片描述
在这里插入图片描述
导入成功

5.添加QFrame

因为qt直接给QWidget顶层窗口设置背景图会失效,所以我们套一个控件QFrame,也是QWidget的一个子类
在这里插入图片描述
在这里插入图片描述
将登录界面放在QFrame里面
在这里插入图片描述
调节QFrame控件大小和界面一样大

6.添加样式表

在这里插入图片描述
这里注意设置背景图时不要使用background-image,这样设置图片不会跟随控件大小变化,我们可以设置为border-image
在这里插入图片描述
设置行编辑样式表
在这里插入图片描述
在这里插入图片描述
设置复选框样式
在这里插入图片描述

在这里插入图片描述
设置按键样式表
在这里插入图片描述
在这里插入图片描述
添加按钮状态样式,(按下)
在这里插入图片描述

7.添加行编辑提示

在这里插入图片描述
在这里插入图片描述
同理
在这里插入图片描述
调节输入的密码私密
在这里插入图片描述

8.演示

登录界面设计

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

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

相关文章

关于OBI 在unity URP环境下使用的正确步骤

OBI在URP环境下使用的正确步骤 资料&#xff1a;OBI官方文档&#xff1a;Obi Physics for Unity - Big Picture 1、替换Shader 为 URP环境下&#xff1a; 2、渲染管线功能列表添加&#xff1a; ①.在Graphics配置中查找当前URP渲染管线 ②.添加Obi流体渲染功能项 ③、设URP环…

HMI触屏网关-VISION如何与Modbus RTU从机通信

上文&#xff1a;HMI触屏网关-VISION如何与Node-red数据双向通信-CSDN博客 1. 准备工作 1.1. 硬件接线 EG网关和Modbus RTU从机通信之前&#xff0c;必须保证接线正确。本次以温湿度传感器为例&#xff0c;该传感器采用的是485通信&#xff0c;具体接线为A接A,B接B 1.2. 串口…

LMDeploy 量化部署实践

一、环境配置见&#xff1a;https://github.com/InternLM/Tutorial/blob/camp3/docs/L2/LMDeploy/readme.md 验证LMDeploy启动InternLM2_5-7b-chat conda activate lmdeploy lmdeploy chat /root/models/internlm2_5-7b-chat二、量化显存计算 参数计算&#xff1a; LMDeploy …

解决vue中this.$set()不更新页面问题

问题汇总&#xff1a;解决vue中this.$set()不更新页面问题 this.$set()方法有一种情况&#xff0c;就是当你要设置的key已经存在于这个对象或数组中的时候&#xff0c;它只会更改data并不会为该key添加响应检测&#xff0c;所以解决这个问题的办法就是在设置值之前先把这个属性…

【Redis之一:下载安装Redis】

Redis下载与安装 一、下载 Redis 安装包1、 Windows 安装包下载 二、安装Redis1、 Windows 安装Redis 三、配置 Redis1、 Windows 中配置 Redis&#xff08;1&#xff09;配置访问密码&#xff08;2&#xff09;重启 Redis 服务 三、访问 Redis1、命令行访问 Redis&#xff08;…

深度学习系列71:表格检测和识别

1. pdf处理 如果是可编辑的pdf格式&#xff0c;那么可以直接用pdfplumber进行处理&#xff1a; import pdfplumber import pandas as pdwith pdfplumber.open("中新科技&#xff1a;2015年年度报告摘要.PDF") as pdf:page pdf.pages[1] # 第一页的信息text pag…

深度学习项目实践——qq聊天机器人(transformer)(一)原理介绍

文章目录 首先第一步——QQ是如何实现实时聊天数据传输过程1. 用户发送消息的开始2. 数据封装与加密3. 建立连接&#xff1a;WebSocket协议的应用4. 消息的传输过程5. 接收者获取消息6. 双向通信与实时性保障7. 保持连接与断线重连 第二步——聊天机器人是如何来接管QQ账号的组…

什么牌子超声波清洗机好?家用超声波清洗机推荐

随着民众生活品质与幸福感的不断提升&#xff0c;诸如珠宝饰品、眼镜等精细物品成为了许多家庭中的常备之物。然而&#xff0c;这些小巧物件容易积累微尘并潜藏细菌&#xff0c;悄然威胁我们的健康安全。超声波清洗机应运而生&#xff0c;成为了解决这一隐患的理想方案&#xf…

快速了解Rust 的数据分析库Polars

【图书介绍】《Rust编程与项目实战》-CSDN博客 《Rust编程与项目实战》(朱文伟&#xff0c;李建英)【摘要 书评 试读】- 京东图书 (jd.com) 17.1.1 什么是Polars Polars是一个基于 Rust 的数据分析库&#xff0c;它的目标是提供一个高性能的数据分析工具&#xff0c;同时也…

自定义审批字段

一. 新增特性 1.路径&#xff1a;SPRO->物料管理->采购->采购订单->采购订单的下达过程->编辑特性 2.输入特征名Z_USRC2_PO点新建 二. 将特性分配给类 1.路径&#xff1a;SPRO->物料管理->采购->采购订单->采购订单的下达过程->编辑类 2.输入…

Windows上MSYS2的安装和使用

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、下载二、安装三、使用1.打开命令行2.搜索软件3.安装软件4.卸载软件5.更新环境6.其他四、MSYS2和Cygwin的差别总结前言 MSYS2这个工具我是越用越喜欢,很多东西放在Linux上如鱼得水但是放在…

ClkLog针对神策不支持全埋点的客户端实现用户访问基础统计分析

本文将介绍&#xff0c;ClkLog针对神策不支持全埋点的客户端实现用户访问基础统计分析 1。 客户遇到的问题 ClkLog的用户访问基础统计分析功能是基于神策SDK的全埋点来实现的。 我们遇到有些客户是使用C、C#等语言来开发的客户端&#xff0c;然而神策此类SDK&#xff08;如C, C…

什么是代理IP_如何建立代理IP池?

什么是代理IP_如何建立代理IP池&#xff1f; 1. 概述1.1 什么是代理IP&#xff1f;1.2 代理IP的工作原理1.3 爬虫的应用场景1.3.1 搜索引擎&#xff0c;最大的爬虫1.3.2 数据采集&#xff0c;市场分析利器1.3.3 舆情监控&#xff0c;品牌营销手段1.3.4 价格监测&#xff0c;全网…

jetsonNano烧录Ubuntu20.04镜像使用ROS2

本来想要参考Jetson nano升级Ubuntu20.04来进行升级。 但是此过程也有大坑&#xff0c;我的目的是&#xff0c;除了升级Ubuntu20.04&#xff0c;在上面使用ROS2&#xff0c;我还希望我写的代码可以使用上Pytorch。 方式一&#xff08;未成功&#xff09; 按照上面的教程可以正…

Spring Bean加载耗时采集工具

功能介绍 Target&#xff1a;针对启动慢的 Spring 应用&#xff0c;找出 IOC 容器启动过程中&#xff0c;加载耗时较长的 Bean 对象进行治理。 &#xfeff; 实现原理 主要用到Spring本身提供的两个扩展接口&#xff1a;BeanPostProcessor ApplicationListener 这两个接口…

202408830测试RK3588的rockit/VI的编译

202408830测试RK3588的rockit/VI的编译 2024/8/30 14:58 前言 环境介绍&#xff1a; 1.编译环境 Ubuntu 20.04.6 LTS rootrootrootroot-desktop:~$ rootrootrootroot-desktop:~$ cat /etc/issue Ubuntu 20.04.6 LTS \n \l rootrootrootroot-desktop:~$ 2.SDK版本&#xff1a…

8,sql查询条件查询语句

查询员工表结构&#xff0c;并分析 DESC 表名;DESC t_employee; 查询出生日期在 1990-01-01 和 1995-01-01 之间的员工信息。between 区间比较这句话的意思就是查看所有员工的生日在1990-01-01和1995-01-01之间的SELECT * FROM 表名 WHERE 生日 between 1990-01-01 AND 1995-0…

共绘国际智图:Elvy与图为科技携手探索边缘计算新境界

近日&#xff0c;巴西知名企业Elvy到访深圳图为科技&#xff0c;共议“合作开发边缘计算机及联合开拓海外市场”事宜。 在全球化日益加深的今天&#xff0c;技术的跨界合作正成为推动行业进步的重要力量。8月23日&#xff0c;一场旨在深化国际合作、共推边缘计算技术发展的会议…

云 VS 边缘计算,关系与区别是什么?

云计算和边缘计算的区别是什么&#xff1f; 云是一种 IT 环境&#xff0c;可以抽象、汇集和共享整个网络中的 IT 资源。边缘是网络边缘的计算位置&#xff0c;以及这些物理位置上的硬件和软件。是在云中运行工作负载&#xff0c;而边缘计算是在边缘设备上运行工作负载。 边缘…

马丁格尔交易策略Anzo Capital指出问题核心,那就是保证金

使用马丁格尔交易策略进行外汇交易时&#xff0c;Anzo Capital 强调了保证金管理的重要性。通过精准计算和策略规划&#xff0c;Anzo Capital 帮助交易者在波动的市场中保持资金安全&#xff0c;并最大化投资回报。 Anzo Capital 提醒交易者&#xff0c;了解波动回弹至关重要&…