【PyQt】10 QLineEdit

文章目录

  • 前言
  • 一、回显模式(EchoMode)
    • 1.1 四种回显模式
    • 1.2 代码展示
    • 运行结果
  • 二、校验器
    • 2.1 代码
    • 2.2 运行结果
  • 三、通过掩码限制输入
    • 3.1 代码
    • 3.2 运行结果
  • 总结


前言

1、QLineEdit 可以输入单行文字
2、回显模式
3、校验器
4、掩码输入


一、回显模式(EchoMode)

1.1 四种回显模式

1、Normal
输入什么,显示什么
2、NoEcho
输入信息,可以传达给计算机,但是不显示。
3、password
输入信息,可以传达给计算机,但是直接显示圆圈。
4、passwordEchoOnEdit
输入信息,先显示一段时间,然后变成掩码。

1.2 代码展示

'''
#Author :susocool
#Creattime:2024/2/9
#FileName:019 - QLineEdit
#Description:四种回显模式
'''
from PyQt5.QtWidgets import *
import sysclass QLineEditEchoMode(QWidget):def __init__(self):super(QLineEditEchoMode, self).__init__()self.initUI()def initUI(self):self.setWindowTitle('文本框的回显模式')formLayout = QFormLayout()normalLineEdit = QLineEdit()noEchoLineEdit = QLineEdit()passwordLineEdit = QLineEdit()passwordEchoOnEditLineEdit = QLineEdit()formLayout.addRow("Normal",normalLineEdit)formLayout.addRow("noEcho", noEchoLineEdit)formLayout.addRow("password", passwordLineEdit)formLayout.addRow("passwordEchoOnEdit", passwordEchoOnEditLineEdit )# setPlaceholderText() : 输入框(input)或文本区域(textarea)中的占位文本。normalLineEdit.setPlaceholderText('Normal')noEchoLineEdit.setPlaceholderText('NoEcho')passwordLineEdit.setPlaceholderText('password')passwordEchoOnEditLineEdit.setPlaceholderText('passwordEchoOnEdit')normalLineEdit.setEchoMode(QLineEdit.Normal)noEchoLineEdit.setEchoMode(QLineEdit.NoEcho)passwordLineEdit.setEchoMode(QLineEdit.Password)passwordEchoOnEditLineEdit.setEchoMode(QLineEdit.PasswordEchoOnEdit)self.setLayout(formLayout)if __name__ == '__main__':app = QApplication(sys.argv)main = QLineEditEchoMode()main.show()sys.exit(app.exec_())

运行结果

无输入
在这里插入图片描述
正常情况
在这里插入图片描述
已有输入,但是不显示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、校验器

限制输入是整数、浮点数或者满足一定条件的字符串。

2.1 代码

'''
#Author :susocool
#Creattime:2024/2/9
#FileName:020-QlineEdit校验器
#Description: 校验器
'''
from PyQt5.QtWidgets import *
from PyQt5.QtGui import QIntValidator,QDoubleValidator,QRegularExpressionValidator
from PyQt5.QtCore import QRegularExpression     # 正则表达式
import sysclass QLineEditValidator(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):self.setWindowTitle('校验器')# 创建表单布局formLayout = QFormLayout()intLineEdit = QLineEdit()doubleEdit = QLineEdit()validatoredit = QLineEdit()formLayout.addRow('整数布局',intLineEdit)formLayout.addRow('浮点类型',doubleEdit)formLayout.addRow('数字和字母',validatoredit)intLineEdit.setPlaceholderText('整数(1~99)')doubleEdit.setPlaceholderText('浮点型(-360~360)')validatoredit.setPlaceholderText('字母和数字')# 整数校验器intValitor = QIntValidator(self)intValitor.setRange(1,99)# 浮点数校验器doubleValidator = QDoubleValidator(self)doubleValidator.setRange(-360,360)doubleValidator.setNotation(QDoubleValidator.StandardNotation)           # 正常显示浮点数doubleValidator.setDecimals(2)      # 设置精度,小数点后两位# 字符和数字# 表示匹配任意一个字母(大小写不敏感)或数字字符。+表示匹配前面的模式一次或多次。$表示匹配输入的结尾位置。reg = QRegularExpression('[a-zA-z0-9]+$')validator = QRegularExpressionValidator(reg,self)validatoredit.setValidator(validator)# 设置校验器intLineEdit.setValidator(intValitor)doubleEdit.setValidator(doubleValidator)validatoredit.setValidator(validator)# 设置布局 !!!self.setLayout(formLayout)if __name__ == '__main__':app = QApplication(sys.argv)main = QLineEditValidator()main.show()sys.exit(app.exec_())

2.2 运行结果

在这里插入图片描述

三、通过掩码限制输入

PyQt5系列教程(28): QLineEdit 2
在这里插入图片描述

3.1 代码

'''
#Author :susocool
#Creattime:2024/2/10
#FileName:021-QLineEdit掩码
#Description: '''
from PyQt5.QtWidgets import *
import sysclass QLineEditMask(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):self.setWindowTitle("用掩码限制QLineEdit控件输入")formLayout = QFormLayout()ipLineEdit = QLineEdit()macLineEdit = QLineEdit()dateLineEdit = QLineEdit()licenseLineEdit = QLineEdit()# 设置掩码# 一般ip是192.168.21.21 一般是三位数ipLineEdit.setInputMask('000.000.000.000;_')    # 没有输入的时候显示是下划线的形式macLineEdit.setInputMask('HH:HH:HH:HH:HH:HH;_')dateLineEdit.setInputMask('0000-00-00')licenseLineEdit.setInputMask('>AAAAA-AAAAA-AAAA-AAAAA-AAAAA;#')formLayout.addRow('数字掩码',ipLineEdit)formLayout.addRow('Mac掩码',macLineEdit)formLayout.addRow('日期掩码',dateLineEdit)formLayout.addRow('许可证掩码',licenseLineEdit)self.setLayout(formLayout)if __name__ == '__main__':app = QApplication(sys.argv)main = QLineEditMask()main.show()sys.exit(app.exec_())

3.2 运行结果

在这里插入图片描述


总结

这篇文章依旧没有总结

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

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

相关文章

Blazor SSR/WASM IDS/OIDC 单点登录授权实例3-服务端管理组件

目录: OpenID 与 OAuth2 基础知识Blazor wasm Google 登录Blazor wasm Gitee 码云登录Blazor SSR/WASM IDS/OIDC 单点登录授权实例1-建立和配置IDS身份验证服务Blazor SSR/WASM IDS/OIDC 单点登录授权实例2-登录信息组件wasmBlazor SSR/WASM IDS/OIDC 单点登录授权实例3-服务端…

黄金交易策略(Nerve Nnife.mql4):1秒救地球的第六单

一轮趋势做单&#xff0c;正常情况是5单便可以完成一轮盈利。但当开仓后快速追加5单也无法止盈的话&#xff0c;我们得找准极其苛刻的条件开出第6单&#xff0c;并指望完成利润覆盖。代码如下&#xff1a; if(count > 5 && count < 10 && isDown(small_…

《CSS 简易速速上手小册》第9章:CSS 最佳实践(2024 最新版)

文章目录 9.1 维护大型项目的 CSS9.1.1 基础知识9.1.2 重点案例&#xff1a;构建一个可复用的 UI 组件库9.1.3 拓展案例 1&#xff1a;优化现有项目的 CSS 结构9.1.4 拓展案例 2&#xff1a;实现主题切换功能 9.2 BEM、OOCSS 和 SMACSS 方法论9.2.1 基础知识9.2.2 重点案例&…

推荐系统|召回04_离散特征处理

离散特征处理 离散特征是什么 怎么处理离散特征 One-hot编码 Embedding嵌入 从one-hot到Embedding&#xff0c;已经节省了很多的存储空间&#xff0c;但当数据量大的时候&#xff0c;还是占空间&#xff0c;所以工业界仍会对Embedding进行优化 而一个物品所对应的Embedding参数…

ESP8266-01S模块连接服务器(ONENET)

ESP8266-01S模块连接服务器&#xff08;ONENET&#xff09; 固件烧录通过http协议连接onenet云平台 固件烧录 一般在esp8266到手之后会进行测试&#xff0c;以确保能用&#xff0c;该模块出厂时默认自带出厂固件的&#xff0c;但如果进行了开发即下载了自己写的程序&#xff0…

Java:常用API接上篇 --黑马笔记

一、 StringBuilder类 StringBuilder代表可变字符串对象&#xff0c;相当于是一个容器&#xff0c;它里面的字符串是可以改变的&#xff0c;就是用来操作字符串的。 好处&#xff1a;StringBuilder比String更合适做字符串的修改操作&#xff0c;效率更高&#xff0c;代码也更…

MySQL-SQL优化

文章目录 1. SQL性能分析1.1 SQL执行频率1.2 慢查询日志1.3 profile详情1.4 explain 2. SQL优化2.1 Insert 优化2.2 Group By 优化2.3 Order By 优化2.4 Limit 优化2.5 Count() 优化2.6 Update 优化 3. 拓展3.1 请你说一下MySQL中的性能调优的方法&#xff1f;3.2 执行 SQL 响应…

STM32 新建寄存器版本MDK工程简要步骤

新建工程文件夹 新建一个工程根目录文件夹&#xff0c;并在该文件夹里新建D/M/O/P/U文件夹。 Drivers&#xff1a;存放与硬件相关的驱动层文件Middlewares&#xff1a;存放正点原子提供的中间层组件文件和第三方中间层文件Output&#xff1a;存放工程编译输出文件Projects&am…

CVE-2018-19518 漏洞复现

CVE-2018-19518 漏洞介绍 IMAP协议&#xff08;因特网消息访问协议&#xff09;它的主要作用是邮件客户端可以通过这种协议从邮件服务器上获取邮件的信息&#xff0c;下载邮件等。它运行在TCP/IP协议之上&#xff0c;使用的端口是143。在php中调用的是imap_open函数。 PHP 的…

C++ vector用法

目录 1. vector&#xff1a; 1.1 vector 说明 1.2 vector初始化&#xff1a; 方式1. 方式2. ​编辑方式3. 方式4. 方式5. 1.3 vector对象的常用内置函数使用&#xff08;举例说明&#xff09; pop_back&#xff08;&#xff09; 2. 顺序访问vector的几种方式&#x…

基于数据挖掘的微博事件分析与可视化大屏分析系统

设计原理&#xff0c;是指一个系统的设计由来&#xff0c;其将需求合理拆解成功能&#xff0c;抽象的描述系统的模块&#xff0c;以模块下的功能。功能模块化后&#xff0c;变成可组合、可拆解的单元&#xff0c;在设计时&#xff0c;会将所有信息分解存储在各个表中&#xff0…

基于PHP的学生管理系统

前言 基于PHP的学生管理系统&#xff1b; 实现 登录、注册、学生信息、修改学生、删除学生、查询学生、添加学生等功能 &#xff1b; 环境准备 开发平台&#xff1a;PhpStrom2022.1.2 、Phpstudy_pro 数据库&#xff1a;MySQL5.7.26 技术架构 Bootstrap PHP7.3.4html5css3 项目…