`一、相关类
- QValidator
- QDoubleValidator 处理Double数据类型的
- QIntValidator 处理int行
- QRegExpValidator, 这个5.0以后好像不建议使用
- QRegularExpressionValidator 这个推荐使用
二、使用
1.QDoubleValidator 数据处理 (QIntValidator 等于同上)
代码如下(示例):
//创建 QDoubleValidator
QDoubleValidator* validator = new QDoubleValidator(lineEdit); //无大小限制 parent 设置到自己 感觉比较合理,会对QDoubleValidator 对象进行自动销毁
//设置输入数字范围在-1000 到 1000 小数点3 位
QDoubleValidator* validator = new QDoubleValidator( -1000 , 1000 , 3, lineEdit); //设置输入
// 单独对3个 参数进行设置
QDoubleValidator* validator = new QDoubleValidator(lineEdit);
if (sBottom != "") { //最小
validator->setBottom(sBottom.toDouble());
}
if (sTop != "") {//最大
validator->setTop(sTop.toDouble());
}
if (sDecimals != "") {//小数点后位数
validator->setDecimals(sTop.toDouble());
}
2.QIntValidator
QIntValidator* validator = new QIntValidator(lineEdit);
if (sBottom != "") {
validator->setBottom(-100);
}
if (sTop != "") {
validator->setTop(100);
}
lineEdit->setValidator(validator);