接着学习第二个控件4.2.2单行文本框:QLineEdit
分为两块来学习:1. 输入类控件、2. 单行文本框
1. 输入类控件
在Qt Designer中,用于图形界面数据输入的控件(Input Widgets)如下:
Combo Box:组合框
Line Edit:单行文本框
Plain Text Edit:纯文本编辑框
Double Spin Box:小数选择框
Date Edit:日期编辑框
Dial:旋钮
Vertical Scroll Bar:垂直滚动条
Vertical Slider:垂直滑块
Font Combo Box:字体组合框
Text Edit:多行文本框
Spin Box:数字选择框
Time Edit:时间编辑框
Date/Time Edit:日期时间编辑框
Horizontal Scroll Bar:水平滚动条
Horizontal Slider:水平滑块
Key Sequence Edit:按键编辑框
2. 单行文本框
1)单行文本框控件属性和方法 QLineEdit类中的常用属性和方法如表。
2)单行文本框控件输入字符串掩码
单行文本框控件通过inputMask属性或者SetInputMask(s)方法设置字符串掩码,运行时该单行文本框需要输入指定的规范输入字符串。
表中列出了输入掩码的占位符和字面字符:
字符:含义
A:必须输入的(A~Z、a~z)
a,n:允许输入的ASCII字符,但不是必需的
N:必须输入的(A~2、a~z、0~9)
X:任何字符都是必须输入的
x:任何字符都是允许输入的,但不是必需的
9:必须输入(0~9)
0:允许输入(0~9),但不是必需的
D:必须输入(1-9)
d:允许输入(1-9),但不是必需的
#:允许输入数字或加/减符号,但不是必需的
H:必须输入十六进制字符(A~F、a~f、0~9)
h:允许输入十六进制字符(A~F、a~f、0~9),但不是必需的
B:必须输入二进制字符 (0, 1)
b:允许输入二进制字符 (0, 1),但不是必需的
>:所有的字母都大写
<:所有的字母都小写
!:关闭大小写转换
\:使用“\”转义上面列出的字符
QLineEdit类中的常用信号如下:
selectionChanged:当选择的文本内容改变时发送
textEdited:当文本被编辑时发送
returnPressed:光标在行编辑框内点击回车键时发送
textChanged:当修改文本内容时发送
editingFinished:当按返回或者回车键时,或者行编辑失去焦点时发送
cursorPositionChanged:当光标位置改变时发送
inputRejected:如果setValidator() 等设置合法字符范围,当用户输入不合法字符时发送
【例4.2】QlineText单行文本框测试,运行程序,显示如图:

from PyQt6.QtWidgets import QApplication, QLineEdit, QWidget, QFormLayout # 从PyQt6.QtWidgets模块导入所需的类
from PyQt6.QtGui import QIntValidator, QDoubleValidator, QRegularExpressionValidator # 从PyQt6.QtGui模块导入验证器类
from PyQt6.QtCore import QRegularExpression # 从PyQt6.QtCore模块导入正则表达式类
import sys # 导入Python标准库的sys模块
class MyWidget(QWidget): # 定义一个名为MyWidget的类,继承自QWidget
def __init__(self, parent=None): # 定义类的构造函数,parent是父窗口的引用,默