我写了一个方法来验证lineEdit中的字符:
def is_validate(self):
regex = QtCore.QRegExp("[a-z-A-Z_]+")
txtDepartment_validator = QtGui.QRegExpValidator(regex, self.txtDepartment)
self.txtDepartment.setValidator(txtDepartment_validator)
return True
然后用下面的另一种方法
^{pr2}$但当我输入数字或特殊字符时,它接受并保存到数据库中。怎么了?在
如果您希望python中的文本行只接受数字(int),可以这样更改:
验证器用于替换
is_validate
之类的方法。你不需要这种方法。问题是你在用户输入后设置验证器,所以已经太迟了。在
创建行edit时,应该设置一次验证器:
然后,用户就不可能在行编辑中键入任何特殊字符。每次用户输入时,验证器都会检查是否允许使用该字符。它是不允许的,它不会被添加到行编辑中。不再需要
is_validate
。在相关问题 更多 >
编程相关推荐