2023版本QT学习记录 -8- HTTP获取图片并且显示(大数据)

---------------------HTTP获取图片---------------------

🎄效果演示

🎄HTTP请求图片思维导图

🎄添加组件

🎄添加头文件

cpp 复制代码
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "qnetworkaccessmanager.h"
#include "qnetworkrequest.h"
#include "qnetworkreply.h"
#include "QDebug"
#include "qfile.h"

🎄创建对象

cpp 复制代码
QNetworkAccessManager *test;

QNetworkReply *reply;

QFile * file;

🎄关联信号和槽

cpp 复制代码
    //关联可读信号
    connect(reply, &QIODevice::readyRead, this, &MainWindow::slotReadyRead);

    //关联下载信号
    connect(reply, &QNetworkReply::downloadProgress, this, &MainWindow::downRepose);

🎄发起请求

cpp 复制代码
    //设置链接
    QNetworkRequest request;
    request.setUrl(QUrl("http://file.alapi.cn/image/comic/120112-15286032729447.jpg"));

    //发起请求
    reply = test->get(request);

🎄通过槽处理返回的数据

cpp 复制代码
void MainWindow::slotReadyRead()
{
   file->write( reply->readAll() );
}

🎄下载完成关闭文件&&显示图片

cpp 复制代码
void MainWindow::downRepose( qint64 bytesReceived, qint64 bytesTotal )
{

    qDebug() <<"资源总大小" <<  bytesTotal << "当前大小" << bytesReceived ;

    if( bytesTotal == bytesReceived )
    {
        file -> close();

        QPixmap pic("rlxy.jpg");

        pic = pic.scaled( ui->label->size() );

        ui->label->setPixmap(pic );


    }

}

---------------------代码获取查看下方---------------------

相关推荐
逆小舟39 分钟前
【C/C++】指针
c语言·c++·笔记·学习
江公望1 小时前
Qt QtConcurrent使用入门浅解
c++·qt·qml
武文斌771 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
递归不收敛1 小时前
吴恩达机器学习课程(PyTorch适配)学习笔记:1.3 特征工程与模型优化
pytorch·学习·机器学习
爱吃小胖橘2 小时前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
kunge1v52 小时前
学习爬虫第四天:多任务爬虫
爬虫·python·学习·beautifulsoup
哲Zheᗜe༘2 小时前
了解学习MySQL数据库基础
数据库·学习·mysql
peter67684 小时前
pandas学习小结
学习·pandas
机器视觉知识推荐、就业指导4 小时前
STM32 外设驱动模块【含代码】:SG90 舵机模块
stm32·单片机·嵌入式硬件·学习
暴富奥利奥5 小时前
完成docker方式的ros环境配置
linux·学习·docker·容器