【Qt】:界面优化(二:控件样式)

界面优化

  • 一.按钮
  • 二.复选框
  • 三.输入框
  • 四.列表
  • 五.菜单栏
  • 六.登陆界面
  • 七.小结

一.按钮

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

二.复选框

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

单选框的属性与复选框一样,就不多演示了。

三.输入框

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

四.列表

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

关于qlineargradient:

  1. qlineargradient有6个参数.
  2. x1, y1:标注了一个起点.
  3. x2, y2:标注了一个终点.这两个点描述了一个"方向".
  4. 例如:. x1:0, y1:0, x2:0, y2:1就是垂直方向从上向下进行颜色渐变.
  5. x1: 0, y1: 0,x2:1, y2:0就是水平方向从左向右进行颜色渐变.
  6. x1:0,y1:0,x2:1, y2:1就是从左上往右下方向进行颜色渐变.
  7. stop0和stop1描述了两个颜色.渐变过程就是从 stop0往stop1进行渐变的.

五.菜单栏

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

六.登陆界面

1.创建一个基础界面。

使用QVBoxLayout来管理上述控件.两个输入框和按钮的minimumHeight均设置为50.(元素在布局管理器中无法直接设置width和height,使用minimumWidth和 minimumHeight代替,此时垂直方向的sizePolicy要设为fixed).右键QcheckBox ,选择Layout Alignment可以设置checkbox的对齐方式(左对齐,居中对齐,右对齐).

在这里插入图片描述

2.设置背景图⽚

由于顶层创建背景图片会不生效,为了解决这个问题,就需要再套一层控件,让当前控件不是顶层控件即可。

把上述控件添加⼀个⽗元素QFrame,并设置QFrame和窗⼝⼀样⼤

在这里插入图片描述

将控件拖到fram里。

在这里插入图片描述

使用border-image设置背景图片,而不是background-image .主要是因为border-image是可以自动缩放的.这一点在窗口大小发生改变时是非常有意义的.

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3.设置输⼊框,checkbox和按钮样式

在这里插入图片描述

在这里插入图片描述

七.小结

QSS本身给Qt提供了更丰富的样式设置的能力,但是整体来说QSS的功能是不如CSS的.在CSS中,整个网页的样式,都是CSS一手负责, CSS 功能更强大,并且也更可控.
相比之下,Qt中是以原生api为主,来控制控件之间的尺寸,位置等,QSS只是起到辅助的作用.
而且Qt中提供的一些"组合控件"(像QComboBox, QSpinBox等)内部的结构是不透明的,此时进行一些样式设置也会存在一定的局限性.
另外,做出好看的界面,光靠QSS是不够的.更重要的是需要专业美工做出设计稿.
因此通过QSS的学习,我们的目的是了解这个技术,而不要求大家立即就能做出非常好看的界面.

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

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

相关文章

查看项目go代码cpu利用率

1.代码添加: "net/http"_ "net/http/pprof"第二步,在代码开始运行的地方加上go func() {log.Println(http.ListenAndServe(":6060", nil))}() 2.服务器上防火墙把6060打开 3.电脑安装:Download | Graphviz …

前端框架EXT.NET Dotnet 3.5开发的实验室信息管理系统(LIMS)成品源码 B/S架构

前端框架EXT.NET Dotnet 3.5开发的实验室信息管理系统(LIMS)成品源码 B/S架构 LIMS实验室管理系统 发展历史 实验室信息管理系统(LIMS),就是指通过计算机网络技术对实验的各种信息进行管理的计算机软、硬件系统。也就是将计算机网络技术与现…

云原生环境该怎样解决网络安全问题

随着云计算逐渐迈向成熟阶段,云原生技术以其“生在云上、长在云上”的核心理念,被普遍认为是云计算未来十年发展的关键方向。该技术不仅能够有效破解传统云实践中所面临的应用升级缓慢、架构臃肿、迭代效率低下等难题,更为业务创新注入了强大…

小程序中Java后台调用接口(getAccessToken)获取调用凭据,调用接口(msgSecCheck)检测文本内容是否安全--最终版

序言:书接上一篇文章:小程序前端调用接口(getAccessToken)获取调用凭据,调用接口(msgSecCheck)检测文本内容是否安全–最终版 原因:在前端测试时,使用小程序工具的真机调试,是可以跑通的,但你用小程序工具的预览模式就会没有响应。原因就在于访问wx.request({}),中…

pytest使用 pytest-rerunfailures 插件实现失败用例重跑功能

使用 pytest 进行测试时,你可以通过安装并配置 pytest-rerunfailures 插件来实现失败用例重跑功能。以下是一个示例说明: 假设你有一个测试文件 test_example.py 包含如下测试用例: import pytestpytest.mark.parametrize("num",…

关于开设RT-DETR专栏及更新内容的一些说明

​ 专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,助力高效涨点!!! 专栏介绍 YOLOv9作为最新的YOLO系列模型,对于做目标检测的同学是必不可少的。本专栏将针对2024年最新推出的YOLOv9检测模型&#xff0…

ChatGPT助力测试领域!探索人工智能编写测试用例的新前景

简介 测试用例是测试人员的核心工作内容,是测试人员思想的“实现类”,其充分体现了测试的思路,可以为后续的测试行为提供指导,是测试人员了解业务的重要根据和质量之根本。如果测试用例设计得不完成,出现了遗漏&#x…

如何在 Ubuntu 14.04 上配置 Redis 缓存以加速 WordPress

简介 Redis 是一个开源的键值存储,可以作为内存存储和缓存进行操作。Redis 是一个数据结构服务器,可以单独用作数据库服务器,也可以与关系型数据库如 MySQL 配对以加快速度,就像我们在本教程中所做的那样。 在本教程中&#xff…

在Visual Studio Code macOS上尽量用Clang编译C++

在linux上惯用g编译cpp. 照理说macOS只要装了g, vscode装了C/C的扩展包: 此外配置了下列文件就可以用g编译: tasks.json (compiler build settings) launch.json (debugger settings) c_cpp_properties.json (compiler path and IntelliSense settings) 下列是用于g对以上3个配…

Kafka - Kafka 为啥抛弃 Zookeeper?

Kafka 为什么要抛弃 ZooKeeper?取代方案是怎样的?因为确实有优化空间。 Zookeeper加kafka 的架构,有三层角色: zookeeper ,提供基础的状态持久化和状态通知服务 controller ,基于zookeeper提供的服务&…

如何在Flask应用程序中使用JSON Web Tokens进行安全认证

密码、信用卡信息、个人识别号码(PIN)——这些都是用于授权和认证的关键资产。这意味着它们需要受到未经授权的用户的保护。 作为开发者,我们的任务是保护这些敏感信息,并且在我们的应用程序中实施强大的安全措施非常重要。 现在…

mybatis的SqlSession

先来看一下sqlsession接口&#xff0c;发现它为我们定义了很多对数据库数据操作的相关方法。 public interface SqlSession extends Closeable {<T> T selectOne(String var1);<T> T selectOne(String var1, Object var2);<E> List<E> selectList(Str…

PLC无线通讯技术在汽车喷涂车间机械手臂上的应用

一、项目背景 在汽车生产装配工艺中&#xff0c;机械臂目前已经广泛地应用于装配、搬运等工业生产中&#xff0c;在机械臂系列产品中&#xff0c;汽车喷漆自动控制喷涂机械装置以其独特的优势&#xff0c;能够根据油漆喷涂量的大小&#xff0c;严格控制喷嘴与喷漆面之间距离等…

flink Unsupported operand types: IF(boolean, NULL, String)

问题&#xff1a;业务方存储了NULL 字符串&#xff0c;需要处理为 null select if(anull&#xff0c;null&#xff0c;a); 结果遇到了 Unsupported operand types: IF(boolean, NULL, String)&#xff0c;根据报错反馈&#xff0c;很明显应该是没有对 null 自动转换&#xff…

vue里面事件修饰符.stop使用案例

Vue.js 事件修饰符 .stop 用于阻止事件继续传播&#xff0c;即阻止事件冒泡。这在处理父子组件之间的事件通信时特别有用&#xff0c;可以防止事件从子组件冒泡到父组件&#xff0c;或者在一个元素上绑定多个事件处理函数时&#xff0c;阻止后续事件处理函数的执行。 下面是一个…

直播预告:拥抱AI-探索AI大模型在邮件反钓鱼检测的应用

随着ChatGPT的问世&#xff0c;生成式AI技术迅速渗透到我们生活的各个角落&#xff0c;以ChatGPT为代表的生成式AI技术&#xff0c;依托其强大的AI模型和海量数据&#xff0c;赢得了广泛的欢迎。 然而&#xff0c;生成式AI的不断演进也带来了新的挑战。大型语言模型&#xff08…

前端常用的数据加密方式

前端开发中&#xff0c;数据安全是至关重要的一个方面。数据加密是保护用户隐私和信息安全的关键方法之一。 前端常用的数据加密方式涵盖了对传输数据的加密、存储数据的加密以及客户端与服务器端之间通信的加密。 1. 对称加密算法 对称加密算法使用相同的密钥进行加密和解密…

IUG-CF论文精读

Neural collaborative filtering with ideal user group labels &#xff08;具有理想用户组标签的神经协同过滤&#xff09; 论文地址&#xff1a;https://www.sciencedirect.com/science/article/pii/S0957417423023898 摘要&#xff1a; 人口统计信息是推荐系统(RSs)的关键…

社交媒体数据恢复:钉钉

在数字化办公日益普及的今天&#xff0c;钉钉作为一款综合性的企业级通讯工具&#xff0c;已经深入到众多企业和个人的工作与生活中。然而&#xff0c;在日常使用过程中&#xff0c;我们难免会遇到一些意外情况导致数据丢失的问题。本文将针对钉钉数据恢复这一主题&#xff0c;…