Qt connect函数报错?

发布于 2022-09-05 02:03:36 字数 1185 浏览 10 评论 0


#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);
}

两个connect都报错

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\5.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>'

所使用类均继承QObject并包含Q_OBJECT

使用旧语法仍然报错

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

少年亿悲伤 2022-09-12 02:03:36

addDialog addD();
editDialog editD();
这两句是实例2个对象嘛?把()去掉试试。

时光与爱终年不遇 2022-09-12 02:03:36

楼主,你把MainWindow::get_data_from_edit和MainWindow::get_data_from_add的方法声明贴出来。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文