如限制只能输入整数,浮点数,或满足一定条件的字符串
def initUI(self):
# self.setGeometry(300,300, 500,500)
self.move(500,500)
self.setWindowTitle('QLineEditValidator')
intLineEdit = QLineEdit()
intLineEdit.setPlaceholderText("整形")
#整数校验器0-99
intValidator = QIntValidator()
intValidator.setRange(1,99)
intLineEdit.setValidator(intValidator) #设置校验器
doubleLineEdit = QLineEdit()
doubleLineEdit.setPlaceholderText("浮点数")
doubleValidator = QDoubleValidator()
doubleValidator.setRange(-360,360) #浮点校验器
doubleValidator.setNotation(QDoubleValidator.StandardNotation)#标准表示法
doubleValidator.setDecimals(2) #设置精度2位
doubleLineEdit.setValidator(doubleValidator)#设置校验器
validatorLineEdit = QLineEdit()
validatorLineEdit.setPlaceholderText("字母和数字")
validatorValidator = QRegExpValidator() #正则校验器初始化
reg =QRegExp('[a-zA-Z0-9]+$') #设置正则表达式
validatorValidator.setRegExp(reg)
validatorLineEdit.setValidator(validatorValidator)#设置校验器
formlayout = QFormLayout() # 表单布局
formlayout.addRow('整形类型',intLineEdit)
formlayout.addRow('浮点类型',doubleLineEdit)
formlayout.addRow('数字和字母',validatorLineEdit)
self.setLayout(formlayout)