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]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.