基本上我正在制作一个简单的计算器程序来理解C ++ GUI的基础知识但是我收到一条错误消息,导致我在void MainWindow::addx()
到label -> setText(c);
中的代码行出现错误消息的:
invalid user-defined conversion from 'int' to 'const QString&'[-fpermissive]
我真的不知道该错误消息的含义我认为这意味着我无法在标签上显示整数。我只是想知道我是否能够在我的标签上显示一个整数,或者我是否必须使用不同的小部件。
class MainWindow() {
int a, b, c;
QLabel * label;
...
};
void MainWindow::addx()
c = a + b;
label -> setText(c);
}
答案 0 :(得分:3)
这应该有用..
label -> setText(QString::number(c));
如果您需要在某个字符串中添加多个数字,可以在下面尝试..
label -> setText(QString("%1").arg(c));
答案 1 :(得分:2)
你必须转换它:
firstnumberx();
secondnumberx();
c = a+b;
label->setText(QString::number(c));
答案 2 :(得分:1)
QLabel
有setNum()
个int
或double
个参数的方法:
label->setNum(c);
setNum()
方法格式化提供的数字,然后使用格式化的值设置text
属性。文档没有指定用于格式化的区域设置,因此您可能希望进行实验。