QLineEdit验证{[A-Z] [a-z] [0-9]}文本输入

时间:2011-03-06 07:25:37

标签: validation qt4 expression qlineedit

我想在我的应用程序中接受用户的新用户名。我希望用户名字符串仅包含A-Za-z0-9,并且maxLength为8.所以我想验证来自QLineEdit的输入。我浏览了文档,但是我对验证器搞砸了。我如何为此目的验证我的QLineEdit

1 个答案:

答案 0 :(得分:7)

您可以使用setInputMask指定验证输入掩码,在您的情况下,您可以使用“N”或“n”仅允许AZ,az和0-9范围内的字符。这样的事情:< / p>

lineEdit->setInputMask("nnnnnnnn;_"); // or NNNNNNNN;_
lineEdit->setCursorPosition(0);

您还可以通过设置QValidatorsetValidator实例设置为lineEdit。这会将lineEdit设置为仅接受验证程序将接受的输入。这将与编辑掩码一起使用

如果您只需要限制行编辑的最大允许长度:使用setMaxLength

lineEdit->setMaxLength(8);

希望这有帮助,尊重