Qt文本验证器QIntValidator类和QDdoubleValidator类

QIntValidator和QDoubleValidator是Qt中用于数值输入验证的类,分别处理整数和浮点数的范围。通过设置最小值、最大值及小数点后位数,可以确保用户在指定范围内输入有效的数字。例如,QIntValidator可用于限制lineEdit只接受100到999之间的整数,而QDoubleValidator则能设定精度,如100.0到999.0之间且最多5位小数。
摘要由CSDN通过智能技术生成

QIntValidator类

QIntValidator类提供了一个验证器,用于确保字符串包含指定范围内的有效整数。

使用方法:

1.创建并设置验证器
 	//构造一个验证器,该验证器接受从最小值100到最大值999的整数。
	QIntValidator *validator = new QIntValidator(100, 999, this); 
	//为lineEdit设置验证器
	ui.lineEdit->setValidator(validator);
	
	//可以使用:setRange()设置最小值和最大值,或使用setBottom()和setTop()单独设置
	//QIntValidator *validator = new QIntValidator(this)
	//validator->setRange(10,100);
	//validator->setBottom(12);
	//validator->setTop(50);
2.判断lineEdit输入值是否在验证器范围内
	int pos = 0;
	if (QValidator::Acceptable != ui.lineEdit->validator()->validate(ui.lineEdit->text(),pos) )
	{
		//输入值不在范围内
		QMessageBox::information(this,"tip","data range error");
	}

QDdoubleValidator类

QDoubleValidator提供浮点数的范围检查;包括:上限、下限和小数点后位数的限制。
使用方法同上,需要注意的是需要通过setNotation()设置浮点数的标记发。

	QDoubleValidator *doubleValidator=new QDoubleValidator(100.0, 999.0, 5, this);
	doubleValidator->setNotation(QDoubleValidator::StandardNotation); //设置为标准标记法,如:0.125
	ui.lineEdit->setValidator(doubleValidator);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值