Hello,
I don't know why slot is not working...

k.h
Qt Code:
  1. class logoThread : public QThread
  2. {
  3. Q_OBJECT
  4. public:
  5. logoThread(QString param1, QString param2) { strUrl = param1; QString strChannel = param2; }
  6.  
  7. void run()
  8. {
  9. QTimer::singleShot(0, this, SLOT(doTheWork()));
  10.  
  11. exec();
  12. }
  13.  
  14. public slots:
  15. void doTheWork()
  16. {
  17. QNetworkAccessManager accessManager;
  18. QNetworkReply* pReply;
  19. QEventLoop eventLoop;
  20. pReply = accessManager.get(QNetworkRequest(QUrl(strUrl)));
  21. QObject::connect(pReply, SIGNAL(finished()), &eventLoop, SLOT(quit()));
  22. eventLoop.exec();
  23.  
  24. QByteArray bData = pReply->readAll();
  25.  
  26. delete pReply;
  27. qDebug() << "got img";
  28. emit setLogo(strChannel, bData);
  29.  
  30. quit(); // not needed ?
  31. }
  32.  
  33. private:
  34. QString strUrl;
  35. QString strChannel;
  36.  
  37. signals:
  38. void setLogo(QString, QByteArray);
  39.  
  40. };
  41.  
  42. class k : public QObject
  43. {
  44. Q_OBJECT
  45. public:
  46. ...
  47.  
  48. public slots:
  49. void setLogoS(QString, QByteArray);
  50. }
To copy to clipboard, switch view to plain text mode 
k.cpp
Qt Code:
  1. void k::img()
  2. {
  3. ....
  4. logoThread *logoThr = new logoThread(strU, strC);
  5. QObject::connect(logoThr, SIGNAL(setLogo(QString,QByteArray)), this, SLOT(setLogoS(QString,QByteArray)), Qt::QueuedConnection);
  6. logoThr->start();
  7. }
  8. }
  9. }
  10. }
  11.  
  12. void k::setLogoS(QString param1, QByteArray param2)
  13. {
  14. qDebug() << "slot";
  15. // show img
  16. }
To copy to clipboard, switch view to plain text mode