[gelöst] Slot wird nicht erkannt

Alles rund um die Programmierung mit Qt
Antworten
qtNiko
Beiträge: 216
Registriert: 6. April 2007 21:26
Wohnort: München

[gelöst] Slot wird nicht erkannt

Beitrag von qtNiko »

hi,

wie so oft war es ein eigener Fehler: im Headerfile war move_display(int new_pos) nicht unter "private slots:", sondern bei den anderen Funktionen untergebracht :?

--------------
meine Applikation erzeugt über einen PushButton ein neues GUI-Objekt, Dialog_graph.
Die Klasse dazu heißt Ui_Dialog_graph_gui und enthält eine QScrollBar, deren Aktionen ich selber programmiere.
So soll mit dem Signal valueChanged(int) der QScrollBar ein Teil einer Grafik gezeichnet werden.

Im Constructor ist daher das Statement enhalten

Code: Alles auswählen

connect(uidg.hScrollBar, SIGNAL(valueChanged ( int)), this, SLOT(move_display(int)));
Im Code wird der Slot definiert:

Code: Alles auswählen

void Dialog_graph::move_display(int new_pos) {
...
}
Im Headerfile ist der Prototyp definiert.

Dennoch erhalte ich bei der Ausführung des Programms die Fehlermeldung
Object::connect: No such slot Dialog_graph::move_display(int) in dialog_graph.cpp:36
Ich verstehe nicht, warum der Slot move_display(int) nicht bekannt sein soll.
Die Funktion connect() verwende ich an anderer Stelle oft, und dort funktioniert es. Allerdings habe ich connect() bisher immer nur im Hauptfenster verwendet.
Kann es sein, dass dies in einem Dialog-Objekt nicht möglich ist?
Gruß von qtNiko

Core i5 760, GT 240, Suse Linux11.3, Eclipse-CDT-Helios, QT4.4, QT-Integration
Antworten