QT Slot Signal Problem
-
hab ein Problem mit Signal und Slots:
class ImageLabel : public QLabel { Q_OBJECT protected: void mousePressEvent(QMouseEvent *ev) { Q_EMIT clicked(ev); } void mouseMoveEvent(QMouseEvent *ev) { } void mouseReleaseEvent(QMouseEvent *ev) { } public: Q_SIGNALS: void clicked(QMouseEvent *ev); };
Das ImageLabel ist ein QLabel, dass man anklicken können soll und das anschließend ein clicked Signal sendet
wenn ich versuche eine andere Klasse bei dem Signal anzumelden so z. B.:
connect(imageLabel, SIGNAL(clicked(QMouseEvent *)), this, SLOT(QMouseEvent *ev));
an so einem Slot:
public Q_SLOTS: void click(QMouseEvent *ev) { }
dann kommt das Signal nie an - wenn ich statt dem QMouseEvent einfach einen Integer (int) als Parameter verwende funktioniert alles ohne Probleme - was mache ich falsch?
und nicht zu vergessen :schland: :hoppschwiiz:
-
connect(imageLabel, SIGNAL(clicked(QMouseEvent *)), this, SLOT(click(QMouseEvent *)));
nur Signaturen, keine Parameterbezeichnungen
-
ach Mist - war ein Copy & Paste Fehler
danke für den Hinweis