PyQt5 QLineEdit

news2025/7/10 0:13:06

PyQt5 QLineEdit

  • QLineEdit常用方法及属性
  • QLineEdit 实例1
  • QLineEdit 实例2
  • QLineEdit 实例3
  • QLineEdit 综合示例

QLineEdit常用方法及属性

在这里插入图片描述

QLineEdit 实例1

import sys
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *

class MyLineEditWindow(QWidget):
    def __init__(self, parent=None):
        super(MyLineEditWindow, self).__init__(parent)
        self.setWindowTitle("LineEdit Demo1")
        self.initUI()

    def initUI(self):
        flayout = QFormLayout()

        pNormalLineEdit = QLineEdit()
        pNoEchoLineEdit = QLineEdit()
        pPasswordLineEdit = QLineEdit()
        pPasswordEchoOnLineEdit = QLineEdit()

        pNormalLineEdit.setPlaceholderText("Normal")
        pNoEchoLineEdit.setPlaceholderText("NoEcho")
        pPasswordLineEdit.setPlaceholderText("Password")
        pPasswordEchoOnLineEdit.setPlaceholderText("PasswordEchoOn")

        pNormalLineEdit.setEchoMode(QLineEdit.Normal)
        pNoEchoLineEdit.setEchoMode(QLineEdit.NoEcho)
        pPasswordLineEdit.setEchoMode(QLineEdit.Password)
        pPasswordEchoOnLineEdit.setEchoMode(QLineEdit.PasswordEchoOnEdit)

        flayout.addRow("Normal", pNormalLineEdit)
        flayout.addRow("NoEcho", pNoEchoLineEdit)
        flayout.addRow("Password", pPasswordLineEdit)
        flayout.addRow("PasswordEchoOn", pPasswordEchoOnLineEdit)

        self.setLayout(flayout)


if __name__ == "__main__":
    app = QApplication(sys.argv)
    win = MyLineEditWindow()
    win.show()
    sys.exit(app.exec_())


在这里插入图片描述

QLineEdit 实例2

import sys
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *

class MyLineEditWindow(QWidget):
    def __init__(self, parent=None):
        super(MyLineEditWindow, self).__init__(parent)
        self.setWindowTitle("QLineEdit Demo2")
        self.initUI()

    def initUI(self):
        fromLayout = QFormLayout()

        pIntLineEdit = QLineEdit()
        pDoubleLineEdit = QLineEdit()
        pValidatorLineEdit = QLineEdit()

        fromLayout.addRow("整型", pIntLineEdit)
        fromLayout.addRow("浮点型", pDoubleLineEdit)
        fromLayout.addRow("字母和数字", pValidatorLineEdit)

        pIntLineEdit.setPlaceholderText("整型")
        pDoubleLineEdit.setPlaceholderText("浮点型")
        pValidatorLineEdit.setPlaceholderText("字母和数字")

        pIntValidator = QIntValidator(self)
        pIntValidator.setRange(1, 99)

        pDoubleValidator = QDoubleValidator(self)
        pDoubleValidator.setRange(-360, 360)
        pDoubleValidator.setNotation(QDoubleValidator.StandardNotation)
        pDoubleValidator.setDecimals(2)

        reg = QRegExp("[a-zA-Z0-9]+$")  # [a-zA-Z0-9]:只能输入一个字符,[a-zA-Z0-9]+$:可以输入字符串
        pValidator = QRegExpValidator(self)
        pValidator.setRegExp(reg)

        # 设置验证器
        pIntLineEdit.setValidator(pIntValidator)
        pDoubleLineEdit.setValidator(pDoubleValidator)
        pValidatorLineEdit.setValidator(pValidator)

        self.setLayout(fromLayout)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    win = MyLineEditWindow()
    win.show()
    sys.exit(app.exec_())

在这里插入图片描述

QLineEdit 实例3

import sys
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *

class MyLineEditWindow(QWidget):
    def __init__(self, parent=None):
        super(MyLineEditWindow, self).__init__(parent)
        self.setWindowTitle("QLineEdit Demo3")
        self.initUI()

    def initUI(self):
        formLayout = QFormLayout()

        pIPLineEdit = QLineEdit()
        pMACLineEdit = QLineEdit()
        pDataLineEdit = QLineEdit()
        pLicenseLineEdit = QLineEdit()

        pIPLineEdit.setInputMask("000.000.000.000;_")
        pMACLineEdit.setInputMask("HH:HH:HH:HH:HH:HH;0")
        pDataLineEdit.setInputMask("0000-00-00")
        pLicenseLineEdit.setInputMask(">AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;#") 

        formLayout.addRow("IP", pIPLineEdit)
        formLayout.addRow("MAC", pMACLineEdit)
        formLayout.addRow("Data", pDataLineEdit)
        formLayout.addRow("License", pLicenseLineEdit)

        self.setLayout(formLayout)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    win = MyLineEditWindow()
    win.show()
    sys.exit(app.exec_())

在这里插入图片描述

QLineEdit 综合示例

import sys
from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *


class MyLineEditWindow(QWidget):
    def __init__(self, parent=None):
        super(MyLineEditWindow, self).__init__(parent)
        e1 = QLineEdit()
        e1.setValidator(QIntValidator())
        e1.setMaxLength(4)
        e1.setAlignment(Qt.AlignRight)
        e1.setFont(QFont("Arial", 20))

        e2 = QLineEdit()
        e2.setValidator(QDoubleValidator(0.99, 99.99, 2))

        flo = QFormLayout()
        flo.addRow("integer validator", e1)
        flo.addRow("double validator", e2)

        e3 = QLineEdit()
        e3.setInputMask("+99_9999_99999")
        flo.addRow("input mask", e3)

        e4 = QLineEdit()
        e4.textChanged.connect(self.textchanged)
        # e4.textChanged.connect(self.textchanged(e4.text()))
        flo.addRow("text changed", e4)

        e5 = QLineEdit()
        e5.setEchoMode(QLineEdit.Password)
        e5.editingFinished.connect(self.enterPress)
        flo.addRow("password", e5) 

        e6 = QLineEdit("Hello world")
        e6.setReadOnly(True)
        flo.addRow("read only", e6)

        self.setLayout(flo)
        self.setWindowTitle("QLineEdit 综合示例")
        

    def textchanged(self, text):
        print("输入的内容为:" + text)

    def enterPress(self):
        print("已输入值")

    
if __name__ == "__main__":
    app = QApplication(sys.argv)
    win = MyLineEditWindow()
    win.show()
    sys.exit(app.exec_())

在这里插入图片描述

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

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

相关文章

【VTK+有限元后处理】实时剖切视图

目的 实现后处理结果云图的平面剖切视图。 方法 通过使用vtkPlaneWidget控件交互,得到剖切平面,通过vtkClipDataSet完成对vtkUnstructuredGrid有限元结果数据的剖切操作。渲染管线如下图所示[1]^{[1]}[1]。 代码实现 首先,我们先写一个创…

【软考软件评测师】第二十八章 计算机网络(网络设备网络地址)

【软考软件评测师】第二十八章 计算机网络(网络设备网络地址) 第二十八章 计算机网络(网络设备网络地址)【软考软件评测师】第二十八章 计算机网络(网络设备网络地址)第一部分 知识点集锦1.IPv4地址1&#…

Maya 贴图链接检测重链打包插件tjh_lost_textures_finder 1.3.2 更新发布

经常遇到maya工程文件贴图丢失或是路径链接更改的问题,对于贴图师和渲染师来说,海量的贴图重连 贴图和查找丢失贴图都是繁重耗时的工作。自从tjh_lost_textures_finder插件诞生以来,就一直再做此项工作的优化工作。 V1.3.2最新版更新内容&am…

Python爬虫:scrapy从项目创建到部署可视化定时任务运行

目录前言第一节 基本功能1、使用 pyenv创建虚拟环境2、创建 scrapy项目3、创建爬虫第二节 部署爬虫4、启动 scrapyd5、使用 scrapyd-client 部署爬虫项目6、使用 spider-admin-pro管理爬虫第三节 部署优化7、使用 Gunicorn管理应用8、使用 supervisor管理进程9、使用 Nginx转发…

简单shell批量文件转换gbk转为utf8编码

前言 matlab打包成exe时发现中文乱码,查找发现是gbk编码问题,找半天没找到合适的批量转换编码工具,就搞了个简单的shell来实现 准备工作 windows上有安装git bash命令行的话可以直接跑sh脚本,没有的话下一个很快。linux可以直接运行 代码 #!/bin/sh…

Answering the SDIs Step by Step

title: Notes of System Design No.01 —Answering the SDIs Step by Step description: Answering the SDIs Step by Step ’ date: 2022-05-04 14:52:06 tags: 系统设计 categories: 系统设计 In this Article , I will give a introduction to the guildline of answerin…

实验33:RFID门禁卡实验

OK,本实验分为两个部分 一、读卡 二、显示不同的卡的信息,同时继电器动作 01 硬件电路设计 读卡ID,两张卡,白卡和蓝卡,用txt文件名称体现 lib里面是库文件 把它放在自己的Arduino相应的文件家里,最好是…

MySQL数据库 -- 内置函数

今天来一起学习MySQL数据库的内置函数。 目录 日期函数 current_date current_time current_timestamp date_add date_sub datediff 实例演示 创建一张表,记录生日 创建一个留言表 字符串函数 charset concat length replace substring ucase…

第02章 变量

变量介绍 定义 定义:变量是程序的基本组成单位,变(变化)量(值) 变量有三个基本要素:数据类型 变量名称 值 变量相当于内存中的一个数据存储空间的表示,可以把变量看作是一个房间…

Pthread 并发编程(三)——深入理解线程取消机制

基本介绍 线程取消机制是 pthread 给我们提供的一种用于取消线程执行的一种机制&#xff0c;这种机制是在线程内部实现的&#xff0c;仅仅能够在共享内存的多线程程序当中使用。 基本使用 #include <stdio.h>#include <pthread.h>#include <assert.h>#incl…

数字化助力生产制造管理:专项生产管理系统

对于现今的生产企业而言&#xff0c;大家都是希望可以让整个制造生产过程更加的规范。同时越来越多的企业也已经分析到&#xff0c;在现有的社会生产方式中&#xff0c;如果不能够使加工业和制造业有先进的更为现代化的管理模式&#xff0c;是难以取得更好的竞争优势的。因此在…

Hadoop搭建

一、安装虚拟机 root 123456789 1、安装完系统后配置虚拟机ip vim /etc/sysconfig/network-scripts/ifcfg-ens33 DEFROUTE"yes" IPV4_FAILURE_FATAL"no" IPV6INIT"yes" IPV6_AUTOCONF"yes" IPV6_DEFROUTE"yes" IPV6_FAIL…

Git学习1

Git学习历程——努力入世的后浪~。 目录 一、Git安装 二、Git的初级使用 1.Git配置文件 2.Git基本命令 2.1 git init 2.2 ls -al 2.3 touch 2.4 git add 2.5 git commit -m 2.6 git status 2.7 git rm 2.8 git log 2.9 git reset --hard 2.10 git reflog 三、Git…

Linux操作系统面试题

Linux 概述 什么是Linux Linux是一套开源的类似Unix操作系统&#xff0c;是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络 为核心的设计思想&#xff0…

pytorch深度学习实战lesson22

第二十二课 LeNet LeNet神经网络由深度学习三巨头之一的Yan LeCun提出&#xff0c;他同时也是卷积神经网络 (CNN&#xff0c;Convolutional Neural Networks)之父。 LeNet主要用来进行手写字符的识别与分类&#xff0c;并在美国的银行中投入了使用。LeNet的实现确立了CNN的结构…

KKFileView在线预览禁用复制右键图片保存等操作

KKFileView在线预览禁用复制右键图片保存等操作一、需求背景二、修改kkFileview1.docx、doc文档不可复制、F12、右键、打印限制问题2.图片限制拖拽处理3.限制Excel转换后复制等操作4.PDF模式禁用右上角菜单栏一、需求背景 公司的运营平台&#xff0c;管理了一些如合同等内容&a…

【记录】软件自动修复工具Jaid配置、调试、运行及相关问题的解决方案

文章目录1. 前言2. Jaid原论文3. 环境4. 配置5. 调试6. 碰到的问题7. 一些发现8. 小结9. 参考文献1. 前言 创作开始时间&#xff1a;2022年11月18日20:50:38 如题&#xff0c;本文记录一下软件自动修复工具Jaid配置、调试、运行及相关问题的解决方案。 2. Jaid原论文 【ASE…

Jenkins+Docker+SVN实现SpringBoot项目半自动化部署

起因&#xff1a;入职后公司需要的技能&#xff0c;全部项目都使用的JenkinsDocker部署 Jenkins详细教程&#xff1a;知乎大佬写的文章 Docker详细教程&#xff1a;一个大佬的博客 SVN使用教程&#xff1a;一个大佬的博客 深入了解Jenkins、Docker、SVN&#xff0c;去上面三个大…

图书管理系统【java】

目录 &#x1f947;1.设计背景 &#x1f50e;2.设计思路 &#x1f511;3.book包 &#x1f4d7;3.1 Book类的实现 &#x1f4d5;3.2 BookList类的实现(书架) &#x1f511;4.user包 &#x1f4d9;4.1 User类的实现 &#x1f4d2;4.2 AdminUser&#xff08;管理员&#x…

MySQL导出csv数据文件

之前使用MySQL导出过一次线上数据&#xff0c;当时解决了乱码和数据没有正常分隔的问题。 参见这篇文章: 记一次“曲折“的MySQL数据导出 前几个月换了工作电脑&#xff0c;这几天又需要导出几十万的线上数据&#xff0c;在导出过程中还是出现了一些问题&#xff0c;再记录一…