
公众号:uncle39py
V1
2023/04/26阅读:29主题:默认主题
60.PyQt文本框QLineEdit
QLineEdit
提供用户输入单行纯文本
QLineEdit
继承自QWidget
1.基础用法
le = QLineEdit("初始值,可不填此参数",self) #构造函数
le.resize(280,25) #父类QWidget的方法
le.setText("设置文本内容") #设置文本内容
print(le.text()) #获取真实的内容文本
le.setEchoMode(QLineEdit.EchoMode.Password)
#设置输出模式为密文形式,api如下图

此处记录一个窗口改变事件,当窗口的尺寸发生改变时,会自动执行此处(如下)的方法.
常用于根据窗口大小,重新计算控件的位置,让控件跟着窗口大小的变化而变化
def resizeEvent(self,evt):
print(1111)
2.文本提示
le.setPlaceholderText("请输入账号")

3.清空文本框
le.setClearButtonEnabled(True)

4.输入限制
le.setMaxLength(3) #设置最大长度,只能输入3个字符或者中文
le.maxLength() #获取...
le.setReadOnly(True) #可以程序setText,但是无法手动输入
验证器(QValidator),主要针对单行文本框内容进行验证,相对比较琐碎,而且可以用信号与槽,在槽函数里面自个针对输入内容做验证.所以此处暂时没必要去了解
5.自动补全
此功能类似QQ登录界面,当用户登录过某个账号后,下一次登录的时候,只要输入前面的数字,就会有选项提供给用户快速选择
def init_ui(self):
le = QLineEdit(self)
completer = QCompleter(["123","270","685"],le)
le.setCompleter(completer)

6.对齐方式

le.setAlignment(Qt.AlignRight)水平靠右显示

7.信号
textEdited
文本框编辑的时候发出信号,
textChanged
文本框内容发生改变时发出信号
两者很像,它们的差别是:当用程序代码改变文本框内容的时候,会发出内容改变信号,而不会发出文本框编辑信号
editingFinished
结束编辑时发出的信号
作者介绍

公众号:uncle39py
V1