qt常用控件-05

文章目录

  • qt常用控件-05
    • LineEdit
    • TextEdit
    • combo box
    • 结语

很高兴和大家见面,给生活加点impetus!!开启今天的编程之路!!
在这里插入图片描述
今天我们进一步c++11中常见的新增表达
作者:٩( ‘ω’ )و260
我的专栏:qt,Linux,C++进阶,C++初阶,数据结构初阶,题海探骊,c语言
欢迎点赞,关注!!

qt常用控件-05

LineEdit

常见的属性:
在这里插入图片描述
核心信号
在这里插入图片描述
接下来我们来看示例1:
我们想要实现一个用户登录界面,来看代码实现:首先我们直接图形化创建对应的label和lineEdit控件。
在这里插入图片描述
随后我们给其中添加上一些提示符:
在这里插入图片描述
我们再来运行代码:
在这里插入图片描述
这里的setInputMask目的是因为在中国绝大多数电话都是11位,所以我们当我们已经输入11位电话之后,理应不能输入电话了~

我们来看示例2:
我们前面是使用的setInputMask来设置限制格式的,只能适用于简单的校验,在大多数情况下,我们利用正则表达式设置限制格式更加灵活。正则表达式比较复杂,我们这里每次使用的时候查阅文档并使用在线工具。其实使用的时候都不用自己写,直接网上搜,再通过在线工具验证即可

正则表达式文档
在线测试工具

接下来我们使用正则表达式来校验电话号码:我们实现一个只有满足正则表达式的电话号码下,此时我们才能够点击提交:
先来图像化设置控件:
在这里插入图片描述
首先,我们需要设置一个正则表达式,和校验器,校验器是利用正则表达式为基准,去校验该电话号码的,所以需要使用正则表达式出初始化这个校验器,来看代码
在这里插入图片描述
为什么这里是new呢的?因为new的,但是我将该new的校验器初始化隔了setValidator,当该对象销毁的时候,析构函数会将这个校验器一并删除,有点智能指针那种感觉了。

我们已经设置校验器,那么,我们是不是还需要触发对应的文本检测信号,我们才能够使用校验器基于正则表达式去校验文本呢?
来看接下来信号与 槽函数的部分(该信号只要文本发生改变,就会触发该信号):
在这里插入图片描述
为什么我们不用arg1,而选择再创建一个s呢?因为validate的参数是QString,int,但是我们arg1是const,直接传的话权限放大,报错,第二个整形是为了当不匹配的时候,告诉我们字符串此时长度是多少(即是从哪里开始不匹配的),这个参数不是很重要。而且返回值是一个state的枚举类型。其中包含:
在这里插入图片描述
我们直接来看结果:
在这里插入图片描述
校验器一般有四种,但是我们常用的就是示例上的这种:
在这里插入图片描述

我们来看示例3,我们想来设置一个面板,内容是用户重置密码,即我们需要输入密码+确认密码并且验证这两个密码是否相同:
这里我们肯定需要用到上面第二个示例中使用到的信号,因为设置密码的时候我们需要和重置密码比较看是否相同,重置密码的时候我们需要和设置密码比较是否相同。即两个lineEdit都需要设置文本检查信号,来看图形化界面:
在这里插入图片描述
来看代码:
在这里插入图片描述
来看效果:
在这里插入图片描述
示例4,我们在输入密码的时候,旁边会有一个按钮,点击之后密码就会回显,反之密码就不会回显,先来看图形化界面:
在这里插入图片描述
再来看代码:
在这里插入图片描述
我们来看效果:
在这里插入图片描述

TextEdit

常见属性:
在这里插入图片描述
常见信号:
在这里插入图片描述

我们来看示例代码1,获取到多行输入框中的内容
先来看图形化界面部分:
在这里插入图片描述
来看代码部分:
在这里插入图片描述

注意:Text Edit获取自身文本接口不是text()!!

来看结果:
在这里插入图片描述
示例2,我们来测试一下接下来的信号:
在这里插入图片描述
这里我们通过日志打印来观察现象:
在这里插入图片描述

combo box

常见属性:
在这里插入图片描述
核心操作:
在这里插入图片描述
核心信号:
在这里插入图片描述
我们来看示例1,我们来模拟一个外面点餐界面:
先来看界面:
在这里插入图片描述
再来看代码:
在这里插入图片描述
来看效果:
在这里插入图片描述
上述是通过代码addItem添加,当然也可以直接在可视化界面添加项目,直接在ui文件双击combo box即可

示例2:我们前面是自己通过代码添加,我们还可以通过文件/网络添加:
因为有时候combo box下拉框的项并不是固定的,会随着时间改变而改变,比如:学生选课

一般我们打开文件使用fopen(c语言阶段),ifstream(c++阶段),而我们更加倾向后者~~
先在d判断创建一个文本文件,并完成其中的内容,我们必须要换行,因为我们读取该文本文件的时候需要使用到getline操作

来看代码:
在这里插入图片描述
来看效果:
在这里插入图片描述
这样我们就添加成功了!!

结语

今天的内容就到这里了,感谢大家的认真阅读,不足之处欢迎大家留言指出,感谢大家支持!!
在这里插入图片描述

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

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

相关文章

Python进阶知识之pandas库

目录 一、Series:一维带标签的数组 二、DataFrame:二维表格型数据结构 三、Series 的核心操作 四、 DataFrame 的核心操作 五、 索引的特殊用法 六、 loc 与 iloc:DataFrame 的高级查询 七、综合案例 一、Series:一维带标签…

【GIT】基础知识及基本应用

很高兴为您详细介绍Git的相关知识。Git是一个分布式版本控制系统,常用于软件开发中的代码管理和协作。以下是关于Git的一些基础知识:1. 安装和配置安装:Windows:可以从GitHub下载适用于Windows的安装包。MacOS:可以通过…

Maven Scope标签:解锁Java项目依赖管理的秘密武器

一、Maven 与依赖管理简介在 Java 项目开发的庞大体系中,Maven 堪称基石般的存在,发挥着极为关键的作用。它遵循 “约定优于配置” 的理念,让项目的构建过程变得规范有序、结构化且具备良好的重复性 。比如,它强制执行标准的项目结…

IP43半加固笔记本L156H

IP43半加固笔记本L156H 产品特性:● 标配Intel I7-7700HQ 4核8线程处理器 ● 操作系统支持Windows7/10 64bit / Li n u x ● DDR4 16G 高速内存 zui高支持64G ● 全高清显示面板15.6寸,1920X1080 ● 内置海德射频模块SMA接口 ● 工作温度:…

ZooKeeper 是什么?

ZooKeeper 是一个分布式协调服务,由 Apache 基金会开发,专为分布式系统设计。它提供了高可用、高性能、一致性的核心服务,帮助分布式应用解决诸如配置管理、命名服务、分布式锁、集群协调等问题。ZooKeeper 的核心特点:简单易用&a…

Java学习第六十三部分——K8s

目录 📫 一、关键概述 🔍 ​​二、定义起源​​ 🚀 ​​三、核心特点​​ 🏗️ ​​四、核心组件​​ 🧩 ​​五、资源对象​​ ⚡ ​​六、应用场景​​ 🧱 ​​七、Java与K8s 🛠️ ​…

【自用】JavaSE--阶段测试

考试题目第一题(10分)需求目前有100名囚犯,每个囚犯的编号是1-200之间的随机数。现在要求依次随机生成100名囚犯的编号(要求这些囚犯的编号是不能重复的),然后让他们依次站成一排。(注:位置是从…

Vulnhub Matrix-Breakout-2-Morpheus靶机攻略

1.下载靶机 靶机下载地址:https://download.vulnhub.com/matrix-breakout/matrix-breakout-2-morpheus.ova 下载后使用VM打开,后续选择安装地址开启就算是下载好了 2.主机发现 查看网络适配器模式(NET模式),找到NET…

OpenCV —— 绘制图形

😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️Take your time ! 😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️…

RHCE(4)

主:从:

网络安全作业三

<!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>用户登录</title><link rel"style…

深入理解 ThreadLocal:从原理到最佳实践

&#x1f4dd; 前言&#xff1a;为什么你需要了解 ThreadLocal&#xff1f;在多线程并发编程中&#xff0c;线程安全始终是一个绕不开的话题。我们常常需要为每个线程维护一份独立的上下文数据&#xff0c;例如用户信息、事务 ID、日志追踪 ID 等。这些数据不能被多个线程共享&…

AD一张原理图分成多张原理图

先选中你要作为主级原理图的那张原理图&#xff0c;我这里是Sheet1,点击设计&#xff08;D&#xff09;&#xff0c;再点击create sheet symbol from sheet&#xff08;这个不能选错&#xff09;快捷键&#xff1a;DY弹窗中选择要加入的次级原理图左击鼠标放置重复上面的动作&a…

AI大模型资源

网址 https://sass.kupepoem.cn/ 登录-选择模型 打开上述网址后如下操作&#xff1a; 进入后&#xff0c;所有模型均可使用&#xff1a; o4-mini&#xff08;支持Deep Research深入研究&#xff09; 选择o4-mini模型 选择深度研究 要研究什么&#xff0c;对话直接输入即可。…

论文阅读--《Besting the Black-Box: Barrier Zones for Adversarial Example Defense》

好的&#xff0c;这是《Besting the Black-Box: Barrier Zones for Adversarial Example Defense》论文的中文翻译&#xff1a;[文件名称]: Besting_the_Black-Box_Barrier_Zones_for_Adversarial_Example_Defense.pdf [文件内容开始]第 1 页 收稿日期&#xff1a;2021年10月1…

如何保证GPFS文件系统的强一致性

一、底层机制&#xff1a;分布式锁与元数据管理GPFS 通过分布式锁和集中式元数据管理的结合&#xff0c;确保数据和元数据的一致性&#xff1a;集中式元数据服务器&#xff08;MDS&#xff09;GPFS 采用主从架构的元数据管理&#xff0c;由指定节点&#xff08;或集群&#xff…

使用Docker+Nginx部署电商平台项目(服务端+管理端+商城)

1.项目背景&#xff1a; 本项目作为小商场系统&#xff0c;涵盖内容如下&#xff1a; litemall Spring Boot后端 Vue管理员前端 微信小程序用户前端 Vue用户移动端 1.1项目架构&#xff1a; 1.2项目技术栈&#xff1a; 本项目可以使用window运行jar包本地部署&#xff0c…

Java网络编程入门:从基础原理到实践(二)

目录 1. 网络编程基础&#xff1a;搞懂设备通信的底层逻辑 1.1 为啥需要网络编程&#xff1f;—— 让设备 “互通有无” 1.2 什么是网络编程&#xff1f;—— 给数据 “定规矩、找路线” 1.3 网络编程的基本概念&#xff1a;理清通信里的角色和流程 1.3.1 发送端和接收端 …

XSS内容分享

反射型XSS &#xff1a;反射型XSS 是非持久性、参数型的跨站脚本。反射型XSS 的JS 代码在Web 应用的参数&#xff08;变量&#xff09;中&#xff0c;如搜索框的反射型XSS。在搜索框中&#xff0c;提交PoC[scriptalert(/xss/)/script]&#xff0c;点击搜索&#xff0c;即可触发…

电线杆距离居民区的安全距离【重要!!!】

10kV架空电线安全距离购房指南 中国大陆地区10kV架空电线距居民住宅需要满足1.5米水平安全距离&#xff08;裸导线&#xff09;和6.5米垂直安全距离的国家强制标准。根据现行法规&#xff0c;10kV系统的电磁辐射水平极低&#xff0c;对居民健康影响可忽略不计&#xff0c;但购房…