Maison  >  Questions et réponses  >  le corps du texte

c++ - La fonction Qt Connect signale une erreur?


#include <QObject>
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "addDialog.h"
#include <QMessageBox>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{

ui->setupUi(this);
setFixedSize(this->width(), this->height());
addDialog addD();
editDialog editD();
QObject::connect(&editD, &editDialog::sendData,
                 this, &MainWindow::get_data_from_edit);
    QObject::connect(&addD, &addDialog::sendData,
                     this, &MainWindow::get_data_from_add);
}

Les deux connexions ont signalé des erreurs

error: no matching function for call to 'MainWindow::connect(editDialog (*)(), void (editDialog::*)(QString), MainWindow*, void (MainWindow::*)(QString))'
                      this, &MainWindow::get_data_from_edit);
                                                           ^
In file included from D:\QT.9\mingw53_32\include\QtCore/QObject:1:0,
                 from mainwindow.cpp:3:

error: no type named 'type' in 'struct std::enable_if<false, QMetaObject::Connection>'

Toutes les classes utilisées héritent de QObject et contiennent Q_OBJECT

L'utilisation de l'ancienne syntaxe signale toujours une erreur

高洛峰高洛峰2650 Il y a quelques jours1273

répondre à tous(2)je répondrai

  • 漂亮男人

    漂亮男人2017-06-19 09:09:26

    addDialog addD();
    editDialog editD();
    Ces deux phrases sont-elles des instances de deux objets ? Essayez de supprimer ().

    répondre
    0
  • 某草草

    某草草2017-06-19 09:09:26

    Propriétaire, veuillez publier les déclarations de méthode de MainWindow::get_data_from_edit et MainWindow::get_data_from_add.

    répondre
    0
  • Annulerrépondre