connect mit Objekt innerhalb eines anderen Objektes

Verschiedenes zu Qt
Antworten
gary
Beiträge: 7
Registriert: 14. März 2010 18:52

connect mit Objekt innerhalb eines anderen Objektes

Beitrag von gary »

Hallo,

ich moechte einen Slider, der sich innerhalb eines Widgets befindet ansprechen. Dazu habe ich einen Selektor erstellt:

QSlider KZeit::getMin() {
return(balken);
}

'balken' ist ein QSlider. Eine andere Klasse 'KFenster' erstellt nun Instanzen von KZeit, hier 'schlafen'. Nun versuche ich zu Konnekten:

QObject::connect(schlafen->getMin(),SIGNAL(sliderMoved(int)),this,SLOT(minToStu(int)));

void minToStu(int){...} ist ein public slot. Als Fehlermeldung erhalte ich seltsamerweise:

/home/jacobi/gary/qt/role/KFenster.cpp:122: error: no matching function for call to 'KFenster::connect(QSlider, const char*, KFenster* const, const char*)'

ausserdem:

/usr/include/QtCore/qobject.h:191: note: candidates are: static bool QObject::connect(const QObject*, const char*, const QObject*, const char*, Qt::ConnectionType)

QSlider ist doch ein QObject, oder nicht?

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

Beitrag von Christian81 »

Entweder KFenster ist kein QObject oder QSlider und/oder KFenster sind nur als Vorwärtsdeklaration vorhanden.

/edit: und liefert schlafen->getMin() wirklich einen Pointer zurück?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
gary
Beiträge: 7
Registriert: 14. März 2010 18:52

Beitrag von gary »

Ich hoffe meine Fragen sind nicht zu dumm. Mir kommt's langsam so vor.
Es haette heissen muessen:

QSlider* KZeit::getMin() {
return(balken);
}

vielen Dank!
Antworten