Qt提供了三个内置验证器类: QDoubleValidator, QIntValidator, QRegExpValidator。
QDoubleValidator类:提供了对浮点数的范围检查.
QIntValidator类:提供了一个确保一个字符串包含一个在一定有效范围内的整数的验证器。
Example of use:
QLineEdit *lineEdit;
QIntValidator *validator = new QIntValidator(0,100,this)
lineEdit->setValidator(validator )
//上述代码说明lineEdit只能输入0--100之间的数字。
QRegExpValidator类:提供了对满足正则表达的字符串的范围检查。
构造函数:
QRegExpValidator( QObject * parent, const char * name = 0 );
QRegExpValidator ( const QRegExp & rx,QObject * parent, const char * name = 0 )
Example of use:
// KeyA由6字节数组成
QRegExpValidator *validator = newQRegExpValidator(QRegExp("[0-9a-fA-F][0-9a-fA-F]"),this);
QLineEdit *pLineEdit[] = {ui.EditPWD1,ui.EditPWD2,ui.EditPWD3,ui.EditPWD4,ui.EditPWD5,ui.EditPWD6};
QString qstrData;
for(int i = 0;i < 6;i++)
{
pLineEdit[i]->setValidator(validator);
}