Solved "emitted-Signal" benutzen
-
Hey,
ich hab eine Klasse in der ich ein signal "emitte"
emit signalExecuteWorkfinished();
Nun würde ich dieses Signal gerne abfragen ....
Leider hab ich keine Ahnung ob und wenn ja, wie ich vorgehen soll / muss.
-
@notyourfan
Ein Signal kann man nicht "abfragen".Was du tun musst:
in der Klasse, in der du auf das Signal reagieren möchtest, musst du einen SLOT implementieren. Diesen SLOT musst du dann mit dem Signal verknüpfen und dann wird mit dem emit deine verknüpfte Funktion aufgerufen.
Steht sehr ausführlich und mit Beispiel im Abschnitt Signals & Slots im Qt-Assistant. -
danke ... ich habe mich wohl falsch ausgedrückt :S
Ich würde gerne mit einem Signal mein QDialog-Fenster schließen.
Und hierfür brauche ich natürlich das Signal um ein SLOT (QDialog-Fenster schließen) -
-
@notyourfan
Immer noch nicht ganz klar was das Problem ist.Mal folgendes angenommen.
- Deine QDialog Instanz heißt myDialog
- Dein Signal heißt closeMyDialog
- Die Klasse in der myDialog installiert wird hat closeMyDialog definiert und heißt myClass
QDialog myDialog; .... connect(this, &myClass::closeMyDialog, &myDialog, QDialog::close);
-
vielen Dank. Wie immer einer klare und ausführliche Beschreibung !!!
Danke.