我知道在c ++中你做int计数器,当它做了什么我希望它会做c ++然后cout<< counter
来显示计数器但现在我想做一个GUI应用程序,它将有20个按钮,当按下一个按钮来执行计数器++并打印计数器。我已经完成了,但是如何在标签中显示计数器呢?
码
#include "form.h"
#include "ui_form.h"
#include <QString>
#include <QLabel>
Form::Form(QWidget *parent) :
QWidget(parent),
ui(new Ui::Form)
{
QString::number();
QString s = QString::number();
ui->setupUi(this);
}
Form::~Form()
{
delete ui;
}
void Form::on_pushButton_clicked()
{
counter++;
ui->label->setText(QString::number(counter));
}
标题:
#ifndef FORM_H
#define FORM_H
#include <QWidget>
#include <QString>
namespace Ui {
class Form;
}
class Form : public QWidget
{
Q_OBJECT
public:
explicit Form(QWidget *parent = 0);
~Form();
private slots:
void on_pushButton_clicked();
int counter=0;
private:
Ui::Form *ui;
};
#endif // FORM_H
我得到的错误:
1)
没有用于调用'QString :: number()'的匹配函数 :: QString的号码();
答案 0 :(得分:1)
#include "form.h"
#include "ui_form.h"
#include <QString>
#include <QLabel>
Form::Form(QWidget *parent) :
QWidget(parent),
ui(new Ui::Form)
{
counter = 0;
ui->setupUi(this);
}
Form::~Form()
{
delete ui;
}
void Form::on_pushButton_clicked()
{
counter++;
ui->label->setText(QString::number(counter));
}
在构造函数中初始化您的成员而不是在标题中。并将您的计数器成员的定义放在私有部分而不是私人插槽部分。