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

登录界面设计

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Qt QSSQt Style Sheets)是一种用于美化Qt界面的机制。它允许开发使用类似于CSS(层叠样式表)的语法来定义Qt应用程序的外观和样式。 通过使用Qt QSS,可以轻松地自定义Qt界面的外观,使其与应用程序的风格和需求保持一致。开发者可以使用CSS中的各种选择器和属性来选择并修改Qt控件的样式,从而实现个性化的界面美化。 Qt QSS具有以下优势: 1. 灵活性:Qt QSS支持多种选择器和属性,可以选择性地修改特定的控件或整个窗口的样式。开发者可以根据不同的需求和设计要求自由选择和修改样式。 2. 可维护性:通过将美化代码与应用程序的逻辑代码分离,开发者可以更轻松地维护和更新应用程序的外观。当需要改变界面风格时,只需修改QSS文件而无需修改应用程序的源代码。 3. 高效性:Qt QSS使用内置的样式缓存机制,可以提高应用程序的运行效率。一旦生成样式缓存,后续的样式修改将只涉及到缓存而无需重新计算。 4. 跨平台性:Qt QSS可以在不同的平台上使用,保证了应用程序在不同操作系统上的一致性。无论是在Windows、Mac还是Linux上运行,界面的外观都可以保持统一。 总结来说,Qt QSS是一种简便有效的方式来美化Qt界面。它的灵活性、可维护性、高效性和跨平台性使得开发者能够轻松地实现个性化的应用程序界面,提升用户体验和应用形象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

#小多子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值