我正在编写一个小计算器,但遇到这个问题:
错误:未定义对 `MainWindow::on_Input_A_textChanged(QString const&) 的引用
mainwindow.h
:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void on_Input_A_textChanged(const QString &arg1);
void on_add_clicked();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
mainwindow.cpp
:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QString"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_add_clicked()
{
double a,b,c;
a = ui->Input_A->text().toDouble();
b = ui->Input_B->text().toDouble();
c = a + b;
ui->Result->setText(QString::number(c));
}
我没有使用错误中的函数,所以我不知道出了什么问题。
我正在使用行编辑,它们的名称为:
Input_A
、Input_B
、Result
。
只需删除(或实施)
on_Input_A_textChanged
:
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void on_add_clicked();
private:
Ui::MainWindow *ui;
};
您可能删除了该方法并忘记了类中的声明。