Re: Eigener Slot mit Qt
Andre Heine <[email protected]>
| Newsgroups | gmane.linux.suse.programming |
|---|---|
| Message-ID | <[email protected]> |
Hi Heiko,
Am Montag, 7. MÀrz 2005 10:46 schrieb Heiko Berberich:
> du hast das Problem genau verstanden. Ich habe jetzt noch ein
> wenig gestöbert und bin darauf gestoÃen, dass man die Klasse
> natÃŒrlich einbinden kann. Allerdings muss sie von QObject geerbt
> sein, um einen Slot darauf definieren zu können. Also habe ich
> das getan. und definiere diesen Slot in dmxInterface.h:
Ok, aber ist dmxInterface Dein MainWindow?
Oder wird dmxInterface in Deinem MainWindow benutzt?
> public slots:
> void sendSingle(int ChannelValue);
>
> Nun versuche ich die Connection zu erstellen mit       Â
> QObject::connect(mySlider,SIGNAL(sliderMoved(int)),Interface,SLOT
^^^^^^
Ist ansich immer "this", d.h. z,B. Dein MainWindow Objekt.
Hast Du den "connect" auch an der richtigen Stelle im Programm?
>(sendSingle(int)));
>
> und erhalte diese Fehlermeldung:
> dcu.cpp:133: error: no matching function for call to
> `QObject::connect(QSlider*&, const char[18], dmxInterface&, const
> char[17])'
Bei mir sieht's z.B. mit den connect so aus:
Der Slot ist in einer QT-Header Datei(mein MainWindow), in der
cpp-Datei steht:
connect( tableKasse, SIGNAL( currentChanged(int,int) ), this,
SLOT( fillKasse() ) );
tableKasse ist hier ein QTable und fillKasse ist der Slot.
Alle Slot's, etc stehen bei z.B. in der "MainWindow" Datei,
in diesen Slot's(fillKasse) rufe ich dann meine Funktionen auf...
> Leider kann ich damit gar nichts anfangen. Kannst du mir da
> weiterhelfen?
Der Compiler findet QObect::connect nicht, oder Deine Parameter
stimmen vom Typ/Anzahl her nicht...
> Achja, ich versuche den Designer im Moment noch zu vermeiden um
> erstmal die dahinter stehenden Konzepte zu verstehen. Meines
> erachtens ist das sinnvoller.
ACK, merke Dir nur, das der Designer Dir den ganzen "Klein-Scheiss"
abnimmt :))
Ciao
andre
--
Um die Liste abzubestellen, schicken Sie eine Mail an:
[email protected]
Um eine Liste aller verfÃŒgbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]