我是qt的新手。我正在制作一个计算器,我做了一个函数来添加2个数字,但它给了我一些奇怪的错误。该函数首先从strings
获取输入2 lineEdit
并将其int
转换为toInt
函数并添加它们然后将其放入label
中{ {1}}:
text().My function
错误:
void calculator::on_pushButton_clicked()
{
ui->ansLabel->setText("+");
ui->firstNo->text(string1);
ui->secondNo->text(string2);
int firstno = string1.toInt();
int secondno = string2.toInt();
int ans = firstno + secondno;
ui->ansLabel->setText(ans);
}
如何解决这些错误。我做错了什么?
答案 0 :(得分:1)
编译器会告诉您究竟出了什么问题。根据Qt文档,QLineEdit::text()
函数不接受任何参数,但返回一个值。同样,QLabel::setText()
不接受整数作为参数,而是QString
。因此,您需要编写如下函数:
void calculator::on_pushButton_clicked()
{
ui->ansLabel->setText("+");
QString string1 = ui->firstNo->text();
QString string2 = ui->secondNo->text();
int firstno = string1.toInt();
int secondno = string2.toInt();
int ans = firstno + secondno;
ui->ansLabel->setText(QString::number(ans));
}