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 );


    }

}

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

相关推荐
瞎某某Blinder2 分钟前
DFT学习记录[6]基于 HES06的能带计算+有效质量计算
python·学习·程序人生·数据挖掘·云计算·学习方法
love在水一方1 小时前
VLN 入门学习计划 —— 基于 InternNav
学习
灰子学技术3 小时前
Envoy HTTP 过滤器处理技术文档
网络·网络协议·http
red_redemption4 小时前
自由学习记录(175)
学习
nashane5 小时前
HarmonyOS 6学习:画中画(PiP)状态同步与场景化实战指南
学习·pip·harmonyos·harmonyos 5
_李小白5 小时前
【android opencv学习笔记】Day 8: remap(像素位置重映射)
android·opencv·学习
勤劳的进取家5 小时前
数据链路层基础
网络·学习·算法
d111111111d5 小时前
直流电机位置式 PID 控制 和 舵机的区别
笔记·stm32·单片机·嵌入式硬件·学习
y = xⁿ7 小时前
Redis八股学习日记:布隆过滤器
数据库·redis·学习
时空自由民.7 小时前
HTTP协议和HTTPS协议结合天气获取案例介绍
网络协议·http·https