#QT 范围限制
一、
new QIntValidator();//可以限制输入数值的位数,以及最小值,并不能限制最大值
例如
ui->lineEdit->setValidator(new QIntValidator(-4, 15));
缺点:
1.不能输入小于-4的值,但是可以输入大于15的值,最大可输入99。
2.输入的时候可以输入00。
3.限制并不是很好。
二、
new QDoubleValidator();//只能限制小数点的位数
例如
ui->lineEdit->QDoubleValidator(new QIntValidator(-4, 15, 3));
缺点:
1.整数部分完全没有限制。
2.小数点限制量3位,但是可以输入xx.000。
三、正则表达式
new QRegExpValidator(QRegExp("^([1-5]\\d{3}(\\.\\d{3})|[1-9]\\d{0,2}(\\.\\d{3})|6000)$");
上述限制范围为1-6000的可以有三位小数。
正则表达式
限制比较准确,表达式写法建议百度,写法有很多种。
但是限制范围如 8-15,就会出现可以输入 1 的情况,因为 10-15 肯定要先输入一个 1.