Qt 三种限制输入框只接受整数的方法

第一种,利用QIntValidator结合 QLineEdit即可。你可以利用setRange来设置整数的输入范围。但是也可以不设置范围,默认范围从-2147483647到2147483647

第二种,利用QRegExpValidator结合QLineEdit,下面在代码里会重点解释。

第三种,用QSpinBox,这个只要将Box的上限下限规定下来即可。

下面看示例:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QIntValidator>
#include <QRegExpValidator>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QIntValidator * pIntVld = new QIntValidator(this);
    ui->EdtInt->setValidator(pIntVld);//任意整数,含负数

    QRegExpValidator * pRegVld = new QRegExpValidator(this);

    //任意整数,含负数  \\d表示一位数字  {1,}表示数字至少一位,多位不限
    //^-表示开头必须是负号。 -?表示负号的个数可以是0个或者一个 故^-?合起来表示开头可以以符号开头,但最多一个符号
    pRegVld->setRegExp(QRegExp(QString("^-?\\d{1,}")));
    ui->EdtReg->setValidator(pRegVld);
}

MainWindow::~MainWindow()
{
    delete ui;
}

效果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>