Qt 设置只能输入英文和数字
头文件
//.h文件
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
namespace Ui {
class Dialog;
}
class Dialog : public QDialog
{
Q_OBJECT
public:
explicit Dialog(QWidget *parent = 0);
~Dialog();
private Q_SLOTS:
void slotCheckBoxState(bool);
private:
Ui::Dialog *ui;
};
#endif // DIALOG_H
源文件
#include "dialog.h"
#include "ui_dialog.h"
#include <QRegExpValidator>
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
//设置密码隐藏
ui->lineEditPasswd->setEchoMode(QLineEdit::Password);
//设置只能输入数字和英文,使用正则表达式
QRegExpValidator *pRevalidotor = new QRegExpValidator(QRegExp("[a-zA-Z0-9]{25}"), this);
ui->lineEditPasswd->setValidator(pRevalidotor);
connect(ui->checkBox,&QCheckBox::toggled,this,&Dialog::slotCheckBoxState);
}
Dialog::~Dialog()
{
delete ui;
}
void Dialog::slotCheckBoxState(bool check)
{
if(check)
{
ui->lineEditPasswd->setEchoMode(QLineEdit::Normal);
}
else
{
ui->lineEditPasswd->setEchoMode(QLineEdit::Password);
}
}
运行截图
还没有评论,来说两句吧...