Slot(Instanz) Problem

Alles rund um die Programmierung mit Qt
Antworten
BrainFck
Beiträge: 3
Registriert: 26. Oktober 2008 22:46

Slot(Instanz) Problem

Beitrag von BrainFck »

Hallo,
is mein erster Beitrag in diesem Forum.
Ich hoff das viel kompetente Leute da sind... xD

Also ich hab folgendes Problem:

Ich habe mehrere Timer in einem Vector, diese sind alle über connect()
mit EINEN Slot verbunden.
Ich mochte jetzt in diesen Slot unterscheiden von welcher Timer-Instanz das Signal kommt.
Den ich möchte auch nicht für jeden Timer einen eigenen Slot erstellen.

Gibt es da irgend ne Lösung für mein Problem?
Sowie bei Events mit dem "Sender"-Objekt...

Danke schon mal :D
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

QSignalMapper sollte da helfen.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
BrainFck
Beiträge: 3
Registriert: 26. Oktober 2008 22:46

Beitrag von BrainFck »

Jo hat soweit funktioniert...
Das hat jetzt nichts mehr mit meinen Timer zu!

ABER

Wie mach ich das wenn ich ein Signal mit einem Übergabeparamenter hab?

z.B.

Code: Alles auswählen


QSignalMapper *signalMapper = new QSignalMapper(this);

signalMapper->setMapping(ui.comboBox, 0);

connect(ui.comboBox, SIGNAL(currentIndexChanged(int)),signalMapper, SLOT (map()));

connect(signalMapper, SIGNAL(mapped(int)),this, SLOT(start_t(int))); //<---??? wie connecte ich das hier?

Hab ich dann zwei Parameter?
Weil ich möchte ja, wie das Beispiel zeigt,
jetzt meine "ID" und aktuellen Index der ComboBox haben.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Connecte in diesem Fall alles auf einen Slot, verwende QObject::sender() und arbeite damit weiter.
Antworten