“”"
QLineEdit标签的输入(校验器)
如限制只能输入整数、浮点数或满足一定条件的字符串
“”"
from PyQt5.QtWidgets import *
from PyQt5.QtGui import QIntValidator,QDoubleValidator,QRegExpValidator
from PyQt5.QtCore import QRegExp
import sys
class QLineEditValidator(QWidget):
def init(self):
super(QLineEditValidator,self).init()
self.initUI()
def initUI(self):
self.setWindowTitle(‘校验器’)
# 创建表单布局
formLayout = QFormLayout()
intLineEdit = QLineEdit()
doubleLineEdit = QLineEdit()
validatorLineEdit = QLineEdit()
formLayout.addRow('整数类型',intLineEdit)
formLayout.addRow('浮点类型', doubleLineEdit)
formLayout.addRow('数字和字母', validatorLineEdit)
self.setLayout(formLayout)
#添加文本提示
#intLineEdit.setPlaceholderText('整型')
#doubleLineEdit.setPlaceholderText('浮点')
#validatorLineEdit.setPlaceholderText('数字和字母')
#整数校验器
intValidator = QIntValidator(self)
intValidator.setRange(1,99)
# 浮点校验器.精度:小数点后两位
doubleValidator = QDoubleValidator(self)
doubleValidator.setRange(-360,360)
#标准的记号表示法,正常的表示浮点数
doubleValidator.setNotation(QDoubleValidator.StandardNotation)
doubleValidator.setDecimals(2)#设置精度,小数点后两位
#字母和数字校验器
reg = QRegExp('[a-zA-Z0-9]+$')#QRegExp是Qt的正则表达式类Qt中有两个不同类的正则表达式.
validator = QRegExpValidator(self)
validator.setRegExp(reg)#正则表达式与校验器绑定
#设置校验器
intLineEdit.setValidator(intValidator)
doubleLineEdit.setValidator(doubleValidator)
validatorLineEdit.setValidator(validator)
if name == ‘main’:
app = QApplication(sys.argv)
main = QLineEditValidator()
main.show()
sys.exit(app.exec_())