[gelöst]QThread Parameterübergabe
Verfasst: 16. August 2010 11:28
Hallo Community,
Ich habe einen kleinen hänger und komme nicht weiter. Ist eine ganz Simple Sache.
Ich möchte beim erstellen einer Thread Klasse Parameter übergeben.. Über den normalen weg mit einer Methode in der Thread Klasse z.b setSettings und dann die Werte vor dem Thread start übergeben funktioniert nicht --> sprich diese sind dann nach dem start des thread nicht mehr bekannt.
Momentane Implementierung:
Ich habe einen kleinen hänger und komme nicht weiter. Ist eine ganz Simple Sache.
Ich möchte beim erstellen einer Thread Klasse Parameter übergeben.. Über den normalen weg mit einer Methode in der Thread Klasse z.b setSettings und dann die Werte vor dem Thread start übergeben funktioniert nicht --> sprich diese sind dann nach dem start des thread nicht mehr bekannt.
Momentane Implementierung:
Code: Alles auswählen
#ifndef SEARCHVEHICLE_H
#define SEARCHVEHICLE_H
#include <QThread>
#include "vehicle.h"
#include "connectftp.h"
class SearchVehicle : public QThread {
Q_OBJECT
public:
SearchVehicle(QMap<QString, QVariant> settings, QWidget *parent=0);
void run();
~SearchVehicle();
private:
QMap<QString, QVariant> ftpSettings;
QWidget *parent;
};
#endif // SEARCHVEHICLE_H
Code: Alles auswählen
#include "searchvehicle.h"
void SearchVehicle::run() {
searchFileInfos();
}
SearchVehicle::SearchVehicle(QMap<QString,QVariant> settings, QWidget* parent) :ftpSettings(settings), parent(parent){
}
void SearchVehicle::searchFileInfos() {
//ftp settings hier nicht verfügbar
}
Code: Alles auswählen
QMap<QString, QVariant> ftpSettings;
ftpSettings["host"] = "dfsdfs";
SearchVehicle *vehicleSearch = new SearchVehicle(ftpSettings, this);
vehicleSearch->start(QThread::NormalPriority);