Seite 1 von 1

Signal durch Signal aufrufen

Verfasst: 26. Oktober 2008 13:18
von reuabreliz
Also ich habe eine Klasse MyNeuPruefungErstelle die von QWidget erbt und in dieser habe ich ein Attribut okButton und ein Attribut textLabel.
Jetzt will ich von einer anderen Klasse ein Objekt der Klasse MyNeuPruefungenErstellen erstellen und einen slot schreiben. connect(myNeuPruefungenErstellenObject->okButton, SIGNAL (clicked()),this,SLOT(getTextVonTextLabel()).

Das würde funktionieren, aba ich will nicht auf das Signal von okButton zugreifen sondern auf ein Signal von MyNeuPruefungErstelle. Das macht im Prinzip dann keinen Unterschied von dem was passiert aba es wäre logischer für mich. Da ja okButton nur ein Attribut ist und mit textLabel zusammen MyNeuPruefungErstelle ergeben.

Wie kann ich das machen oda gibt es da andere Wege

Verfasst: 26. Oktober 2008 19:16
von solarix
es wäre logischer für mich
logischer.. und vor allem sauberer (kapselung).. ja.
aba ich will nicht auf das Signal von okButton zugreifen sondern auf ein Signal von MyNeuPruefungErstelle
dann mach das doch einfach... implementiere ein Slot in der Klasse "MyNeuPruefungErstelle" und connecte ihn im Konstruktor dieser Klasse mit dem Signal des Buttons "okButton". In diesem Slot kannst du dann ein eigenes Signal (der Klasse "MyNeuPruefungErstelle") emitten... welches du dann von aussen beliebig weiterverwenden kannst.

hat übrigens nichts mit "C++ Grundlagen" zu tun... -> falsches Forum

THX

Verfasst: 26. Oktober 2008 20:06
von reuabreliz
Danke hab das noch nicht ganz verstanden gehabt mit signal und slots. Jetzt aber schon und bin wieder einen Schritt weiter :) Das mit dem Forum tut mir leid war wohl ein versehen meinerseits wollte ins qt grundlagen forum