Qt 设置只能输入英文和数字

心已赠人 2023-06-12 09:45 94阅读 0赞

头文件

  1. //.h文件
  2. #ifndef DIALOG_H
  3. #define DIALOG_H
  4. #include <QDialog>
  5. namespace Ui {
  6. class Dialog;
  7. }
  8. class Dialog : public QDialog
  9. {
  10. Q_OBJECT
  11. public:
  12. explicit Dialog(QWidget *parent = 0);
  13. ~Dialog();
  14. private Q_SLOTS:
  15. void slotCheckBoxState(bool);
  16. private:
  17. Ui::Dialog *ui;
  18. };
  19. #endif // DIALOG_H

源文件

  1. #include "dialog.h"
  2. #include "ui_dialog.h"
  3. #include <QRegExpValidator>
  4. Dialog::Dialog(QWidget *parent) :
  5. QDialog(parent),
  6. ui(new Ui::Dialog)
  7. {
  8. ui->setupUi(this);
  9. //设置密码隐藏
  10. ui->lineEditPasswd->setEchoMode(QLineEdit::Password);
  11. //设置只能输入数字和英文,使用正则表达式
  12. QRegExpValidator *pRevalidotor = new QRegExpValidator(QRegExp("[a-zA-Z0-9]{25}"), this);
  13. ui->lineEditPasswd->setValidator(pRevalidotor);
  14. connect(ui->checkBox,&QCheckBox::toggled,this,&Dialog::slotCheckBoxState);
  15. }
  16. Dialog::~Dialog()
  17. {
  18. delete ui;
  19. }
  20. void Dialog::slotCheckBoxState(bool check)
  21. {
  22. if(check)
  23. {
  24. ui->lineEditPasswd->setEchoMode(QLineEdit::Normal);
  25. }
  26. else
  27. {
  28. ui->lineEditPasswd->setEchoMode(QLineEdit::Password);
  29. }
  30. }

运行截图

20191112114329531.gif

发表评论

表情:
评论列表 (有 0 条评论,94人围观)

还没有评论,来说两句吧...

相关阅读