Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » KDevelop / Qt / wxWidget » struktur als zeiger durch slotargument übergeben

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
11.10.2004, 15:19 Uhr
~volture
Gast


also ich hab folgendes problem:
ich möchte eine struktur, mit hilfe eines zeigers, einem slot übergeben.

Quellcode:

C++:
...h

typedef struct{
char name[10];
int wert;
....

} t_meineStruct;

extern t_meineStruct meineStruct[num];


...h

public slots:
void newSlot(struct t_meineStruct *zgr);


...cpp

struct t_meineStruct *pz;
pz = &meineStruct[k];

connect( timer, SIGNAL( timeout()), this, SLOT( newSlot(pz)));

void Dialog::newSlot(struct t_meineStruct *zgr)
{
...
}


aber irgendwie läuft das nicht. kann mir irgendjemand sagen wo der fehler liegt.
ich find ihn nicht.

volture!


Bearbeitung von typecast:
cpp-Tags gesetzt

Dieser Post wurde am 12.10.2004 um 08:27 Uhr von typecast editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
12.10.2004, 08:39 Uhr
typecast
aka loddab
(Operator)



C++:
connect( timer, SIGNAL( timeout()), this, SLOT( newSlot(pz)));



Hier liegt der Hund begraben. Connect ist nur dafuer zustaendig um Qt klar zu machen das wenn das Signal timeout emitiert wird der Slot newSlot aufgerufen werden muss. Hier uebergibst du keine Parameter. Dass machst du mit dem aufruf emit. Auserdem muessen das Signal und der Slot die gleichen Parameter haben.

C++:
//irgendeineKlasseMitDemSlot.cpp
//..
connect(timer, SIGNAL(timeout(struct t_meineStruct *)), this, SLOT(mySlot(struct t_meineStruct *)));

// irgendeineKlasseMitDemSignal.cpp
void irgendeineKlasseMitDemSignal::irgendeineFunktion() {
   struct t_meineStruct *pz;
   //...
   emit timeout(pz); // hier wird dann der Slot mySlot von irgendeineKlasseMitDemSlot aufgerufen.
}


--
All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ KDevelop / Qt / wxWidget ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: