1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
#include "ImageDownloader.h"
// Init
ImageDownloader *ImageDownloader::imageDownloader = NULL;
ImageDownloader* ImageDownloader::getInstance()
{
if (NULL == imageDownloader)
{
imageDownloader = new ImageDownloader;
}
return imageDownloader;
}
void ImageDownloader::downloadImg(QUrl url)
{
QNetworkAccessManager *nam;
nam = new QNetworkAccessManager(this);
connect(nam,SIGNAL(finished(QNetworkReply*)),this,SLOT(downloadImg_finished(QNetworkReply*)));
// QUrl url = QUrl("http://district.netii.net/pub/bmw.jpg");
QNetworkRequest requete(url);
QByteArray postData;
QNetworkReply *r = nam->post(requete, postData);
//qDebug();
}
void ImageDownloader::downloadImg_finished(QNetworkReply *reply)
{
reply->open(QIODevice::ReadOnly);
if(reply->error() == QNetworkReply::NoError)
{
QByteArray b = reply->readAll();
QImage imgTmp;
imgTmp.loadFromData(b);
ImageDownloader::getInstance()->setImg(imgTmp);
emit downloadImg_success();
}
else
{
qDebug() << reply->errorString();
}
} |
Partager