C++ QT QLineEdit如何限制输入

1.QLineEdit是一个文本输入控件,输入的值会被转化为QString

2.如果你想将输入的值进行一些限制,比如输入的值必须是double或者是int数字,那么可以为QLineEdit增加一个控件validator

3.在QT 6.3.1中存在父类

QValidator和3个子类QIntValidator、QDoubleValidator和QRegularExpressionValidator

分别用来控制输入是否符合int,double和是否符合正则表达式

4.eg: QDoubleValidator可以通过设定最大最小值,decimal等来控制输入的最大最小,小数的位数

QDoubleValidator DoubleValidator = QDoubleValidator(0, INT_MAX, 4, this);
DoubleValidator.setNotation(QDoubleValidator::StandardNotation);
ui->exposureLineEdit->setValidator(&DoubleValidator);
ui->analogLineEdit->setValidator(new QDoubleValidator(0, INT_MAX, 4, this));
ui->digitalLineEdit->setValidator(new QDoubleValidator(0, INT_MAX, 4, this));

5.QRegularExpressionValidator通过设定正则表达式来控制输入的值是否符合正则表达式

QRegularExpression regex("^[a-zA-Z0-9_]+$");
QRegularExpressionValidator *validator = new QRegularExpressionValidator(regex, lineEdit);

lineEdit->setValidator(validator);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值