Singale von Objekten in Container

Alles rund um die Programmierung mit Qt
Antworten
moviemax
Beiträge: 56
Registriert: 10. März 2008 09:49
Wohnort: München

Singale von Objekten in Container

Beitrag von moviemax »

Ich suche eine Möglichkeit wie ich einfach!
Signale abfangen kann die Objecte abfeuern die sich in
einer QLinkedList<myObject *> gespeichert sind.
Beispiel :

Code: Alles auswählen

 

class FeuertLos : public QThread 
{
 Q_OBJECT

public: 
 FeuertLos(QObject *parent = 0);  
protected:
  /*overwrite */  void run() ;
  .... 
};

//  AndereClasse.cpp 
...

   FeuertLos *fl = new FeuertLos(this);
   fl->start();
   m_FeuertListe.add(fl);
Jetzt will ich das object löschen wenn es finisched() emitiert hat:
müsste ich für jedes object ein connect establishen und diesen dann
wieder deconnecten oder gibt es da etwas "more convienient"

moviemax
PeterLustig
Beiträge: 386
Registriert: 21. November 2007 20:07

Beitrag von PeterLustig »

Du kannst auch Objekte innerhalb einer Liste ganz normal connecten.. Allerdings musst du dich selbst darum kümmern, dass das Item auch wieder aus der Liste gelöscht wird.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Da du wahrscheinlich alle Objecte auf den selben Slot connectest, könntest du dir noch QObject::sender() ansehen.
moviemax
Beiträge: 56
Registriert: 10. März 2008 09:49
Wohnort: München

Beitrag von moviemax »

danke für Eure Tips. genau darum geht es: Wenn der run() durch ist
und dies mit finished signalisiert hat, soll das Object - und natürlich der
Zeiger aus der Liste. vorher noch sowas wie deleted (QString fName )
emitieren.
moviemax
PeterLustig
Beiträge: 386
Registriert: 21. November 2007 20:07

Beitrag von PeterLustig »

Und wo ist dein Problem?
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Dass wir Ihm nicht die gesamte Arbeit abnehmen...
Antworten