当前位置: 首页 > news >正文

030-第三代软件开发-密码输入框

头图

第三代软件开发-密码输入框

文章目录

  • 第三代软件开发-密码输入框
    • 项目介绍
    • 密码输入框
    • 总结一下

关键字: QtQmlechoModeTextInputImage

项目介绍

欢迎来到我们的 QML & C++ 项目!这个项目结合了 QML(Qt Meta-Object Language)和 C++ 的强大功能,旨在开发出色的用户界面和高性能的后端逻辑。

在项目中,我们利用 QML 的声明式语法和可视化设计能力创建出现代化的用户界面。通过直观的编码和可重用的组件,我们能够迅速开发出丰富多样的界面效果和动画效果。同时,我们利用 QML 强大的集成能力,轻松将 C++ 的底层逻辑和数据模型集成到前端界面中。

在后端方面,我们使用 C++ 编写高性能的算法、数据处理和计算逻辑。C++ 是一种强大的编程语言,能够提供卓越的性能和可扩展性。我们的团队致力于优化代码,减少资源消耗,以确保我们的项目在各种平台和设备上都能够高效运行。

无论您是对 QML 和 C++ 开发感兴趣,还是需要我们为您构建复杂的用户界面和后端逻辑,我们都随时准备为您提供支持。请随时联系我们,让我们一同打造现代化、高性能的 QML & C++ 项目!

重要说明☝

☀该专栏在第三代软开发更新完将涨价

密码输入框

为什么不是一个普通的密码输入框,而是一个密码输入框呢,因为密码可以当普通输入框使用,普通输入框不能当密码框用呀,反正原理都差不多,这里咱们就直接搞一个密码输入框,一个正常输入框就是下图的样子

但是如果我把这个放到界面,我下个月的工资估计都领不到,所以还得和美工小姐姐沟通一下,整个下图的样子

image-20230729113041023

这样是不是就可以了呢,其实这个在普通的输入框是没有的,需要我们自己组合一下,这里就直接上代码:

Rectangle
{width: 590height: 80color:"#00FFFFFF"border.width:1border.color:"#666666"radius:8Rectangle{width: parent.heightheight: parent.heightcolor:"#00FFFFFF"Image {width: 36height: 45anchors.centerIn: parentsource: "qrc:/Login/T_Resource/T_Image/Login/password.png"}}TextInput{id:input_UserPasswordanchors.left: parent.leftanchors.leftMargin: parent.heightanchors.right: parent.rightanchors.rightMargin: 5anchors.top: parent.topanchors.bottom: parent.bottomverticalAlignment: TextInput.AlignVCenterleftPadding: 10echoMode: TextInput.Passwordclip: truefont.pixelSize: 33font.family: "Source Han Sans CN"color: "#FFFFFF"anchors.fill: parent}
}

这段代码是一个用于创建矩形控件的QML代码。它包含一个带有密码输入功能的自定义登录框。

首先,外部的Rectangle定义了一个矩形控件,其宽度为590,高度为80,背景颜色为透明(“#00FFFFFF”),边框宽度为1,边框颜色为灰色(“#666666”),圆角半径为8。

在这个矩形内部,又定义了一个子矩形Rectangle。该子矩形的宽度和高度都被设置为父矩形的高度,背景颜色也是透明。这个子矩形是用来放置一个图像的,在图像的上方居中显示了一个密码图标。

图像由一个Image组件表示,其宽度为36,高度为45,通过anchors.centerIn属性实现在父矩形内水平和垂直居中显示。图像的来源是一个资源文件(qrc)路径,具体路径为:“qrc:/Login/T_Resource/T_Image/Login/password.png”。

接下来的TextInput定义了一个文本输入框,其id为"input_UserPassword"。这个文本输入框的左边界与父矩形的左边界对齐,且距离父矩形的左边缘的距离为父矩形的高度,右边界也与父矩形的右边界对齐,且距离父矩形的右边缘的距离为5。顶部和底部边界与父矩形对齐。

该文本输入框垂直居中显示,左边内边距为10个像素,密码输入时显示圆点,设置了clip属性以限制文本内容的显示范围。

文本的字体大小为33像素,字体家族为"Source Han Sans CN",文本颜色为白色(“#FFFFFF”)。anchors.fill属性将文本输入框填充满父矩形。

image-20230729113315345

还是直接上代码:

Rectangle
{width: 590height: 80color:"#00FFFFFF"border.width:1border.color:"#666666"radius:8Rectangle{width: parent.heightheight: parent.heightcolor:"#00FFFFFF"Image {width: 37height: 42anchors.centerIn: parentsource: "qrc:/Login/T_Resource/T_Image/Login/user.png}}TextInput{id:input_UserNameanchors.left: parent.leftanchors.leftMargin: parent.heightanchors.right: parent.rightanchors.rightMargin: 5anchors.top: parent.topanchors.bottom: parent.bottomverticalAlignment: TextInput.AlignVCenterleftPadding: 10clip: truefont.pixelSize: 33font.family: "Source Han Sans CN"color: "#FFFFFF"onTextChanged: UserManagement.currentUserName = text}
}

这段代码是创建一个矩形控件的QML代码,用于实现一个包含用户名输入功能的自定义登录框。

外层的Rectangle定义了一个矩形控件,宽度为590,高度为80,背景颜色为透明(“#00FFFFFF”),边框宽度为1,边框颜色为灰色(“#666666”),圆角半径为8。

在这个矩形内部,又定义了一个子矩形Rectangle。该子矩形的宽度和高度都被设置为父矩形的高度,背景颜色也是透明。这个子矩形用于放置一个图像,在图像的上方居中显示了一个用户图标。

图像由一个Image组件表示,宽度为37,高度为42,通过anchors.centerIn属性实现在父矩形内水平和垂直居中显示。图像的来源是一个资源文件(qrc)路径,具体路径为:“qrc:/Login/T_Resource/T_Image/Login/user.png”。

接下来的TextInput定义了一个文本输入框,其id为"input_UserName"。这个文本输入框的左边界与父矩形的左边界对齐,且距离父矩形的左边缘的距离为父矩形的高度,右边界也与父矩形的右边界对齐,且距离父矩形的右边缘的距离为5。顶部和底部边界与父矩形对齐。

该文本输入框垂直居中显示,左边内边距为10个像素,设置了clip属性以限制文本内容的显示范围。

文本的字体大小为33像素,字体家族为"Source Han Sans CN",文本颜色为白色(“#FFFFFF”)。

当文本输入框的内容发生变化时,绑定的onTextChanged事件会触发,并将输入的文本赋值给UserManagement.currentUserName变量。

大家有找区别所在了吗?echoMode: TextInput.Password

再分享一个其他的样式:

image-20230729113732447

这个是不是更好实现,就把我第二个连的图标换成文字就可以了。代码如下:

Rectangle
{width: 313height: 37radius: 4color: "transparent"border.color: "#666666"border.width: 1Text {id:text_UserPassword_1anchors.left: parent.leftanchors.leftMargin: 15anchors.verticalCenter: parent.verticalCecolor: "#FFFFFF"font.pixelSize: 15font.family: "Source Han Sans CN"text: qsTr("原密码:")}TextInput{id:input_UserPassword_1anchors.left: parent.leftanchors.leftMargin: text_UserPassword_1.wanchors.right: parent.rightanchors.rightMargin: 5anchors.top: parent.topanchors.bottom: parent.bottomverticalAlignment: TextInput.AlignVCenterleftPadding: 10echoMode: TextInput.Passwordclip: truefont.pixelSize: 15font.family: "Source Han Sans CN"color: "#FFFFFF"anchors.fill: parent}
}

总结一下

其实项目中那些看是高大上的控件,不过都是一些基础控件的组合,不是有有句话吗,万物皆可Painter


博客签名2021

相关文章:

030-第三代软件开发-密码输入框

第三代软件开发-密码输入框 文章目录 第三代软件开发-密码输入框项目介绍密码输入框总结一下 关键字: Qt、 Qml、 echoMode、 TextInput、 Image 项目介绍 欢迎来到我们的 QML & C 项目!这个项目结合了 QML(Qt Meta-Object Language…...

mysql读取文件

环境地址:phpMyAdmin LOAD DATA INFILE 任意文件读取漏洞 | VULNSPY 参考文章: mysql任意文件读取漏洞学习_BerL1n的博客-CSDN博客 从一道ctf题学习mysql任意文件读取漏洞 - 安全客,安全资讯平台 MYSQL 任意文件读取 小组CTF出题感想 - …...

CentOS(5)——rpm包和源码包区别

目录 一、简介 二、区别 ①包名称 ②概念 ③优缺点 ④安装位置的区别 ⑤安装位置不同带来的影响 ⑥卸载方式的不同 一、简介 最近在公司内网离线升级Git时,遇见两个概念,分别是使用rpm包安装git,另一个这是编译源码包安装git&#x…...

Golang 实现对配置文件加密

引言 在实际的应用中,配置文件通常包含了一些敏感的信息,如数据库密码、API密钥等。为了保护这些敏感信息不被恶意获取,我们可以对配置文件进行加密。本文将介绍如何使用Go语言实现对配置文件的加密。 场景 在这个场景中,我们将…...

MYSQL数字函数详解和实战(数字函数大全,内含示例)

MySQL提供了许多数字函数,用于对数字进行各种计算和处理。以下是一些常用的MySQL数字函数。 内容有点多,建议收藏以备后续用到查阅参考。 目录 一、SIGN 取数字的符号 二、ABS 取绝对值 三、COS 取余弦值 四、ACOS 取反余弦值 五、SIN 取正弦值 六…...

Linux系列讲解 —— VIM配置与美化

目录 1. Vim基本配置1.1 配置文件1.2 基本配置 2. 插件管理器Vundle2.1 下载Vundle2.2 在vimrc中添加Vundle的配置 3. Vundle的使用3.1 安装插件3.2 卸载插件 1. Vim基本配置 1.1 配置文件 vim的配置文件有两处,请根据实际情况选择修改哪个。 (1) 全局配置文件&am…...

FreeSWITCH 使用指北(2)-多段音频顺序播放的设置

文章目录 1. 多段音频顺序播放的设置 1. 多段音频顺序播放的设置 在 FreeSWITCH 中涉及到放音的 APP 有不少,比较典型的是播放录音文件的 playback 和 play_and_detect_speech 。这两个 APP 播放录音的功能都依赖于 switch_ivr_play_say.c#switch_ivr_play_file() …...

使用python爬虫语言调用有道翻译实现英中互译(2023实现)

使用python爬虫语言调用有道翻译实现英中互译(2023实现) 作者: 安静到无声 作者简介:人工智能和硬件设计博士生、CSDN与阿里云开发者博客专家,多项比赛获奖者,发表SCI论文多篇。 Thanks♪(・ω・)ノ 如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关…...

2024王道考研计算机组成原理——指令系统

零、本章概要 指令寻址:解决的是PC"1"的问题 数据寻址:使用寄存器/内存/结合 基址寻址:用于多道程序的并发执行 直接寻址:call 0x12345678 变址寻址:esi edi用于循环,因为使用直接寻址需要一堆…...

vscode中如何将cmd设置为默认终端

vscode中如何将cmd设置为默认终端?下面本篇文章给大家介绍一下vscode中设置默认终端为cmdPowerShelWSL等的方法,希望对需要的朋友有所协助! 一、快捷键(CtrlShiftP打开命令面板,输入select选择“SelectDefaultProfil …...

Unity UGUI 循环滑动列表实现思路及简单代码实现

前言: 自己之前其实比着书上实现过一个循环滑动列表,并且商业化到了项目里,上线后也在用。可后来怎么也想不起来细节,看着之前的代码也看不很懂。这次复习一下,希望真能理解它的本质,也记录一下&#xff0…...

贪心算法(1)--经典贪心算法

目录 一、活动安排问题 二、最优装载问题 三、分数背包问题 四、多机调度问题 一、活动安排问题 1、策略 活动安排问题:设有n个活动的集合E{1,2,...,n},每个活动i都有一个使用该资源的起始时间和一个结束时间,且。如果选择了活动i则它在…...

Nginx负载均衡和备份和故障转移

如果你想要两台 Nginx 服务器配置访问同一个链接,通常意味着你可能想要以下几种配置: 负载均衡:两台 Nginx 服务器都工作,当访问者请求资源时,流量会在这两台服务器之间进行均衡分配。备份和故障转移:其中…...

Android-Framework 三方应用默认权限都不弹窗

代码位置:frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java -1853,10 1853,10 public class PackageManagerService extends IPackageManager.StubmPermissionCallback);}- final String packageName res.pkg.application…...

TX Text Control.NET For WPF 32.0 Crack

TX Text Control 支持VISUAL STUDIO 2022、.NET 5 和 .NET 6 支持 .NET WPF 应用程序的文档处理 将文档编辑、创建和 PDF 生成添加到您的 WPF 应用程序中。 视窗用户界面 功能齐全的文档编辑器 TX Text Control 是一款完全可编程的丰富编辑控件,它在专为 Visual Stu…...

使用Go语言测试Redis性能

1. 前言 Redis是一个高性能的键值存储数据库,常用于缓存、队列、排行榜等场景。在实际应用中,我们需要对Redis的性能进行测试,以便了解其在不同场景下的表现。本文将介绍如何使用Go语言测试Redis的性能。 2. 环境准备 在开始测试前&#x…...

【Javascript】运算符(赋值,算术,自增,自减)

目录 赋值 算术 单个变量: 多个变量: 在字符串,数组中充当连接符 自符串与字符串 数组与数组 数组与字符串 自增与自减 前置 自增 自减 后置 自增 自减 赋值 var a 1;算术 单个变量: var a 1;a 1;console.l…...

Redis数据类型——list类型数据的扩展操作

1.list阻塞式数据获取 2.list类型数据业务场景...

[论文笔记]NEZHA

引言 今天带来华为诺亚方舟实验室提出的论文NEZHA,题目是 针对中文中文语言理解神经网络上下文表示(NEural contextualiZed representation for CHinese lAnguage understanding),为了拼出哪吒。 预训练语言模型由于具有通过对大型语料库进行预训练来捕获文本中深层上下文信…...

【Linux】认识协议

目录 一、应用层二、协议三、序列化和反序列化 一、应用层 之前的socket编程,都是在通过系统调用层面,如今我们来向上打通计算机网络。认识应用层的协议和序列化与反序列化 我们程序员写的一个个解决我们实际问题, 满足我们日常需求的网络程序, 都是在应…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动

一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】

微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

STM32F4基本定时器使用和原理详解

STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序

一、开发准备 ​​环境搭建​​: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 ​​项目创建​​: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

Nginx server_name 配置说明

Nginx 是一个高性能的反向代理和负载均衡服务器,其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机(Virtual Host)。 1. 简介 Nginx 使用 server_name 指令来确定…...