【qt】qss使用

2024-08-30 10:52
文章标签 使用 qt qss

本文主要是介绍【qt】qss使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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.演示

这篇关于【qt】qss使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1120617

相关文章

Spring Boot3虚拟线程的使用步骤详解

《SpringBoot3虚拟线程的使用步骤详解》虚拟线程是Java19中引入的一个新特性,旨在通过简化线程管理来提升应用程序的并发性能,:本文主要介绍SpringBoot3虚拟线程的使用步骤,... 目录问题根源分析解决方案验证验证实验实验1:未启用keep-alive实验2:启用keep-alive扩展建

使用Java实现通用树形结构构建工具类

《使用Java实现通用树形结构构建工具类》这篇文章主要为大家详细介绍了如何使用Java实现通用树形结构构建工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录完整代码一、设计思想与核心功能二、核心实现原理1. 数据结构准备阶段2. 循环依赖检测算法3. 树形结构构建4. 搜索子

GORM中Model和Table的区别及使用

《GORM中Model和Table的区别及使用》Model和Table是两种与数据库表交互的核心方法,但它们的用途和行为存在著差异,本文主要介绍了GORM中Model和Table的区别及使用,具有一... 目录1. Model 的作用与特点1.1 核心用途1.2 行为特点1.3 示例China编程代码2. Tab

SpringBoot使用OkHttp完成高效网络请求详解

《SpringBoot使用OkHttp完成高效网络请求详解》OkHttp是一个高效的HTTP客户端,支持同步和异步请求,且具备自动处理cookie、缓存和连接池等高级功能,下面我们来看看SpringB... 目录一、OkHttp 简介二、在 Spring Boot 中集成 OkHttp三、封装 OkHttp

使用Python实现获取网页指定内容

《使用Python实现获取网页指定内容》在当今互联网时代,网页数据抓取是一项非常重要的技能,本文将带你从零开始学习如何使用Python获取网页中的指定内容,希望对大家有所帮助... 目录引言1. 网页抓取的基本概念2. python中的网页抓取库3. 安装必要的库4. 发送HTTP请求并获取网页内容5. 解

使用Python实现网络设备配置备份与恢复

《使用Python实现网络设备配置备份与恢复》网络设备配置备份与恢复在网络安全管理中起着至关重要的作用,本文为大家介绍了如何通过Python实现网络设备配置备份与恢复,需要的可以参考下... 目录一、网络设备配置备份与恢复的概念与重要性二、网络设备配置备份与恢复的分类三、python网络设备配置备份与恢复实

C#中的 StreamReader/StreamWriter 使用示例详解

《C#中的StreamReader/StreamWriter使用示例详解》在C#开发中,StreamReader和StreamWriter是处理文本文件的核心类,属于System.IO命名空间,本... 目录前言一、什么是 StreamReader 和 StreamWriter?1. 定义2. 特点3. 用

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

Django序列化中SerializerMethodField的使用详解

《Django序列化中SerializerMethodField的使用详解》:本文主要介绍Django序列化中SerializerMethodField的使用,具有很好的参考价值,希望对大家有所帮... 目录SerializerMethodField的基本概念使用SerializerMethodField的