QLineEdit:输入单行文本

下面描述了默认的键绑定。行编辑还提供了一个上下文菜单(通常通过单击鼠标右键进行调用),它提供了其中一些编辑选项。

按键 动作
Left Arrow 将光标向左移动一个字符。
Shift+Left Arrow 移动并选择一个文字左边的文字。
Right Arrow 将光标向右移动一个字符。
Shift+Right Arrow 移动并选择文本向右移动一个字符。
Home 将光标移动到该行的开头。
End 将光标移动到该行的最后。
Backspace 删除光标左边的字符。
Ctrl+Backspace 删除光标左侧的单词。
Delete 删除光标右侧的字符。
Ctrl+Delete 删除光标右侧的单词。
Ctrl+A 全选。
Ctrl+C 将选定的文本复制到剪贴板。
Ctrl+Insert 将选定的文本复制到剪贴板。
Ctrl+K 删除到行尾。
Ctrl+V 将剪贴板文本粘贴到行编辑中。
Shift+Insert 将剪贴板文本粘贴到行编辑中。
Ctrl+X 删除选定的文本并将其复制到剪贴板。
Shift+Delete 删除选定的文本并将其复制到剪贴板。
Ctrl+Z 取消最后的操作。
Ctrl+Y 重做最后的撤消操作。

任何其他表示有效字符的键序列都会导致字符被插入到行编辑中。

EchoMode(回显模式)

1.Normal:输入什么显示什么

2:NoEcho:输入什么不显示,但是已经提交了

3.Password:输入什么最后在界面显示为****

4.PasswordEchoOnEdit :编辑时显示为正常,失去焦点后转换为***

校验器

QIntValidator: 整形校验器只能输入整形数字

方法:setRange(最小值,最大值)

pyqt5该方法有bug,并不能限制输入输出的最小最大值只会限制为输入的位数不超过最大值不小于最小值

QDoubleValidator:浮点型校验器

方法::setRange(最小值,最大值,精度)

QRegExpValidator:正则表达式校验器

方法:

reg=QRegExp('正则表达式')

qreg=QRegExpValidator()

qreg.setRegExp(reg)

掩码

用掩码来限制输入

from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *
import sys
class MyWindow(QWidget):
def __init__(self):
super(MyWindow,self).__init__()
self.name=None
self.password1=None
self.password2 = None
self.password3 = None
self.button=None
self.res=None
self.mask=None
self.setupUi()
def setupUi(self):
self.setWindowTitle("文本输入框")
self.resize(400,200)
form=QFormLayout(self)#创建一个表单布局
form.setSpacing(30)#设置该布局上控件之间的间隔
name=QLineEdit(self)
password1=QLineEdit(self)
password2 = QLineEdit(self)
password3 = QLineEdit(self)
mask=QLineEdit(self)
button=QPushButton(self)
res=QLabel(self)
form.addRow("姓名",name)
form.addRow("密码1",password1)
form.addRow("密码2", password2)
form.addRow("密码3", password3)
form.addRow("掩码",mask)
form.addRow("提交",button)
form.addRow("结果",res)
# 设置提示
name.setPlaceholderText("请输入姓名")
password1.setPlaceholderText("请输入整型数字密码")
password2.setPlaceholderText("请输入浮点型数字密码")
password3.setPlaceholderText("请输入数字和字符的混合密码")
mask.setPlaceholderText("请输入掩码")
# 设置三种回显模式
password1.setEchoMode(QLineEdit.NoEcho)
password2.setEchoMode(QLineEdit.Password)
password3.setEchoMode(QLineEdit.PasswordEchoOnEdit)
#设置校验器
password1val=QIntValidator(self)#整形校验器
password1val.setRange(1,88)
#(1,88) 输入范围为0到99
#(-1,88)输入范围为-9到99
#该限制为不超过最大值的位数和不小于最小值的位数
password2val = QDoubleValidator(self)#浮点型校验器
password2val.setRange(-1,50,2)#设置为-9到99精度为2
password2val.setNotation(QDoubleValidator.StandardNotation)#设置浮点数为标准表示法
reg=QRegExp('[a-zA-Z0-9]+')#正则表达式
password3val = QRegExpValidator(self)
password3val.setRegExp(reg) password1.setValidator(password1val)
password2.setValidator(password2val)
password3.setValidator(password3val) mask.setInputMask(">N:N:N") button.setText("确定")
button.clicked.connect(self.setRes)
self.name=name
self.password1=password1
self.password2 = password2
self.password3 = password3
self.mask=mask
self.button=button
self.res=res def setRes(self):
self.res.setText("您的姓名为:\n"+self.name.text()+"\n您的密码为:\n1: %s \n2: %s \n3: %s"%(self.password1.text(),self.password2.text(),self.password3.text())+"\n您的掩码为:\n"+self.mask.text()) if __name__ == '__main__':
app=QApplication(sys.argv)
window=MyWindow()
window.show()
sys.exit(app.exec_())

PyQt5入门之QLineEdit的更多相关文章

  1. PyQt5 入门

    换了VSCODE开发,感觉比sublime好点,可能是由于第三版老弹框烦人吧.VSCODE看着也挺好看的. 学习 PyQt5 中文教程 0. 安装完之后错误 pip 安装了 pyqt5 from Py ...

  2. PyQt5入门

    PyQt5 是用来创建Python GUI应用程序的工具包.作为一个跨平台的工具包,PyQt可以在所有主流操作系统上运行(Unix,Windows,Mac). 本文描述Windows系统下如何安装Py ...

  3. PyQt5入门教程

    原文链接:https://blog.csdn.net/azuremouse/article/details/90338961 问题记录: 1. pip 安装时速度太慢, 需要使用国内镜像 pip in ...

  4. 推荐:pyqt5入门教程

    版权声明:本文为CSDN博主「AzureMouse」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/azure ...

  5. Python3使用PyQt5制作简单的画板/手写板

    0.目录 1.前言 2.简单的画板1.0 在定点和移动中的鼠标所在处画一条线 3.简单的画板2.0 在定点和移动中的鼠标所在处画一条线 并将画过的线都保留在窗体上 4.简单的画板3.0 将按住鼠标后移 ...

  6. Pyqt5的事例讲解

    1.第一个gui程序 import sys from PyQt5.QtWidgets import QApplication from PyQt5.QtWidgets import QMainWind ...

  7. 【python学习】PyQt基础学习以及一个信息论与编码课设实例

    这学期的信息论与编码的课设需要用编程语言实现霍夫曼.费诺以及香农编码,要具备在windows下的可视化操作界面,因此就选用PyQt作为开发工具,本篇博客记录一下PyQt的基础以及课设的实例 参考: & ...

  8. PyQt:个性化登录界面模仿QQ登录

    写在前面 写了一个登录界面的demo,类似QQ的,写的自己喜欢的样式,贴一下代码,先上效果,如下 陈述 PyQt5+Python3.5.2 login.py是里登录的主界面loginWnd类,Head ...

  9. Python校验文件MD5值

    import hashlib import os def GetFileMd5(filename): if not os.path.isfile(filename): return myHash = ...

  10. 使用pyqt写了一个检查大数据环境的gui

    通过pyqt做了一个大数据最佳实践检查的gui界面 1.首先是需要用到的模块 from PyQt5.QtWidgets import QApplication from PyQt5.QtWidgets ...

随机推荐

  1. modbus通讯协议详解

    1.Modbus 协议简介  Modbus协议是一种已广泛应用于当今工业控制领域的通用通讯协议.通过此协议,控制器相互之间.或控制器经由网络(如以太网)可以和其它设备之间进行通信.Modbus协议使用 ...

  2. C#多线程开发-处理异步操作中的异常

    C#多线程开发-处理子线程中的异常 在平时的多线程开发中,对于异常的处理是至关重要的,千万不能马虎.如果在实际的项目中,对于某些线程中的异常没有处理,会直接导致整个程序崩溃,软件无法使用. 其中需要说 ...

  3. 抽象同步队列AQS原理和实践

    AQS简述 AQS是一个FIFO的双向队列,队列元素类型为Node(也就是Thread).AQS有一个state属性,ReentrantLock可以用来便是当前线程获取锁的可重入次数:对于samaph ...

  4. MySQL长时间不登录密码过期解决办法

    MySql管理工具 Navicat for MySql的时候,弹出了一个1862 - MySql Your password has expired.To log in you must change ...

  5. vue环境安装与配置

    https://www.jb51.net/article/251371.htmhttps://www.yht7.com/news/193355 一.下载和安装Vue: https://nodejs.o ...

  6. CSS3新增选择器(属性选择器、结构伪类选择器、伪元素选择器)

    ​本博文介绍CSS3中新增的选择器,包括属性选择器.结构伪类选择器和伪元素选择器. 1 属性选择器 属性选择器([属性])可以根据元素的属性和属性值来对符合要求的元素进行选择. 属性选择器的基础语法如 ...

  7. [数据库]MySQL解决:MySQLNonTransientConnectionException: Could not create connection to database server.【待完善】

    场景复现 mysql数据库 5.7.24 jdbc driver: mysql-connector-java: 5.1.33 jdbc 配置: + jdbc.url + driverName: Tom ...

  8. 【Note】(坑)一些组合恒等式的实际意义理解(和待填坑的组合数学知识)

    目录 排列组合 恒等式 (1) \(C_n^m=C_n^{n-m}\) (2) \(A_n^m+mA_n^{m-1}=A_{n+1}^m\) (3) \(C_n^{m-1}+C_n^{m}=C_{n+ ...

  9. BISS-C 8通道采集renishaw传感器及其CRC校验

    背景 BISS-C 是常见的位置编码器传输协议,相对于传统的协议,支持更快的传输速度,电器接口为电压差分RS422或者485,抗干扰能力较强,在精密位置传输中应用广泛. 下述信息源自雷尼绍 典型的请求 ...

  10. 服务器数据监控监控-Zabbix

    Zabbix下载 Zabbix Sources https://www.zabbix.com/download Zabbix安装介绍 Server端 1.安装开发软件包 yum -y groupins ...