powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Qt. Загрузка изображения из сети.
3 сообщений из 3, страница 1 из 1
Qt. Загрузка изображения из сети.
    #38899920
hippik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Подскажите как реализовать загрузку изображения из сети.
нашел пример в сети:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
void MainWindow::on_pushButton_clicked()
{
        nam = new QNetworkAccessManager(this);
        QUrl url("http://i.imgur.com/Uw7Fk.jpg");
        QNetworkReply* reply = nam->get(QNetworkRequest(url));

        QEventLoop eventloop;
        connect(reply,SIGNAL(finished()),&eventloop,SLOT(quit()));
        eventloop.exec();

        if (reply->error() == QNetworkReply::NoError)
        {
            QImageReader imageReader(reply);
            imageReader.setAutoDetectImageFormat (false);
            QImage pic = imageReader.read();
            ui->label->setPixmap(QPixmap::fromImage(pic));

         }
}



получаю ошибку: QSslSocket: cannot resolve SSLv2_client_method

это возможно и notice,но тогда подскажите как мне добиться загрузки изображения из сети?

ps. Linux Mint 17.1, QT 5.4
...
Рейтинг: 0 / 0
Qt. Загрузка изображения из сети.
    #38900135
hippik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного переделал, так работает. Ошибка есть, но ее можно видимо игнорировать.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
void MainWindow::on_pushButton_clicked()
{
    nam = new QNetworkAccessManager(this);
    QUrl url("http://i.imgur.com/Uw7Fk.jpg");
    QNetworkReply* reply = nam->get(QNetworkRequest(url));

    QEventLoop eventloop;
    connect(reply,SIGNAL(finished()),&eventloop,SLOT(quit()));
    eventloop.exec();

    if (reply->error() == QNetworkReply::NoError)
    {
        QByteArray data = reply->readAll();
        QImage image = QImage::fromData(data);
        ui->label->setPixmap(QPixmap::fromImage(image));
        ui->label->setMinimumHeight(image.height());

     }
}
...
Рейтинг: 0 / 0
Qt. Загрузка изображения из сети.
    #38900391
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hippik,

Неплохо было бы ещё таймаут добавить, типа
Код: plaintext
1.
2.
3.
4.
QEventLoop eventloop;
connect(reply,SIGNAL(finished()),&eventloop,SLOT(quit()));
QTimer::singleShot( 5000, & eventloop, SLOT( quit() ) );
eventloop.exec();
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Qt. Загрузка изображения из сети.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]