Unsolved How to solve Object::connect: No such signal
-
This post is deleted! -
@sierdzio I was using the new version but I get the error of matching
error: no matching function for call to ‘qdude::MainWindow::connect(qdude::MainWindow*, void (qdude::MainWindow::*)(const QImage&), qdude::MainWindow*, void (qdude::MainWindow::*)(const QImage&))’
-
@jaouad100 said in How to solve Object::connect: No such signal:
void setImage(const QImage &);
Make this method as slot:
protected slots: void setImage(const QImage &);
-
@sierdzio The same issue :/
-
@jaouad100 said in How to solve Object::connect: No such signal:
@sierdzio I was using the new version
If you say you are using the "new version" syntax, we would not expect to see
SIGNAL()
orSLOT()
.Would you care to either confirm your code is still exactly as shown in your first post, or update it correctly?
-
@JonB I confirm that the code posted is the version I'm working on at the moment
-
@jaouad100
Then I think (I am not a C++-er) you'll find that as @sierdzio wrote for the old syntax you need to remove the two&
characters prior toMainWindow::
in bothSIGNAL()
&SLOT()
(because they effectively put their own&
in for you) .... -
@JonB Yes I noticed that but it is not the issue
-
@jaouad100
If it is not the issue, then why does your error message read:
qdude::MainWindow::&MainWindow::newImage(const QImage&*)
with that middling&
in it? I believe it is....If I wanted to use the old syntax, I would be writing:
QObject::connect(this, SIGNAL(newImage(const QImage &)), this, SLOT(setImage(const QImage &)));
exactly as per e.g. http://doc.qt.io/qt-5/qobject.html#connect
-
@JonB Yes you're right. It was not only the reference because I tried without the reference but it didn't work but also the qualification on the names MainWindow:: I took it off and now it works, thanks!