Qt QWizard学习 当需要验证输入时

下文主要讨论当使用QWizard时,需要验证当前向导页所输入内容,如果不符合要求,则设置下一步按钮为不可用。

具体实现如下:

1.首先在firstWidget构造函数中利用正则表达式对要输入的文本框进行限制:

//构造正则表达式QRegExp regexp("[1-9][0-9]*$");

QRegExpValidator * pValidator = new QRegExpValidator(this);

pValidator->setRegExp(regexp);

ui->m_pLineEdit->setObjectName("test_lineEdit")ui->m_pLineEdit->setValidator(pValidator);

2.在重写的WizardPage的构造函数中获取上面设置的QLineEdit,并注册:

m_pFirstWidget = new firstWidget(this);

QLineEdit * pLineEdit = m_pFirstWidget->findChild("test_lineEdit");

//注册,其中num后加*号表示必填,正确输入后,才能下一步

registerField("num*", pLineEdit);

3.最终完成时读取数据则用如下方法:

m_Num = field("num").toString();

完整代码点击此处

你可能感兴趣的:(Qt QWizard学习 当需要验证输入时)