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);