如何使用QlineEdit输入整数值

时间:2014-11-06 11:00:47

标签: c++ qt qlineedit

我正在尝试使用QlineEdit

当我运行程序时,如何将值输入到编辑栏中,并将该值存储为变量以供稍后使用。到目前为止,我只知道如何使用

输入文本
void parameter_settings::on_lineEdit_textEdited(const QString &arg1)

{
    ui->lineEdit->setText("");
}

我有一个GUI,要求用户输入特定范围内的值。该值将存储为变量以供以后使用。我已阅读有关验证器的信息但无法按预期工作。

1 个答案:

答案 0 :(得分:5)

我不完全确定您的问题是什么,但您可以使用命令text()从QLineEdit获取输入:

QString input = ui->lineEdit->text();

并使用以下输入整数:

int integer_value = ui->lineEdit->text().toInt();

正如您提到的验证器:您可以使用验证器来允许用户首先仅将整数插入QLineEdit。有不同的但我通常喜欢使用' RegEx'验证。在这种情况下:

QRegExpValidator* rxv = new QRegExpValidator(QRegExp("\\d*"), this); // only pos
QRegExpValidator* rxv = new QRegExpValidator(QRegExp("[+-]?\\d*"), this); // pos and neg
ui->lineEdit->setValidator(rxv);

注意:正如Pratham的评论中所提到的,如果您只需要输入整数,那么您应该使用QSpinBox来完成所有这些开箱即用的操作。附带额外的手柄容易增加和减少价值。