Bonjour,
Voila ça fait 2 jours que j'essaie mais rien n'y fait -__-
J'ai ceci :
GoRequetteHttp() étant une fonction dans un thread (la lib utilisé et pthread).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 void Action::GoRequetteHttp() { manager = new QNetworkAccessManager(); file = new QFile(QString("index.php")); url = QUrl("http://qt.developpez.com/"); this->file->open(QIODevice::WriteOnly); this->reply = manager->get(QNetworkRequest(this->url)); QObject::connect(this->reply, SIGNAL(finished()), this, SLOT(AfficherResultatHttp())); }
Mon soucis étant que quand je lance une action la fonction et bien exécuté dans le thread mais le SIGNAL n'est jamais envoyé !
Action .h
A oui et quand je met
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8QNetworkAccessManager *manager; QUrl url; QFile *file; QNetworkReply *reply; public slots: void AfficherResultatHttp();
Dans la console j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2manager = new QNetworkAccessManager(this); file = new QFile(QString("index.php"), this);
Je sais même pas pourquo il me parle de Qthread alors que je ne l'utilise même pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 QObject: Cannot create childen for a parent that is in a different thread. (Parent is Action(0x67d8a0), parent's thread is QThread(0x673348), current thread is QThread(0x1470b70)
Merci grandement de votre aide






Répondre avec citation








ben que tu n'as pas le choix. Il te faut utiliser QThread si tu veut utiliser les classes qui dérivent de QObject.
Partager