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


    }

}

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

相关推荐
o(╥﹏╥)13 分钟前
Learn how Gen AI 学习笔记
人工智能·笔记·学习
进阶小白猿22 分钟前
Java技术八股学习Day23
java·网络·学习
誰能久伴不乏23 分钟前
Qt 线程为什么和 Linux pthread 不一样?事件循环、QObject 线程归属与串口上位机正确架构
linux·qt·架构
臭东西的学习笔记28 分钟前
论文学习——酶动力学参数预测的机器学习模型研究进展
人工智能·学习·机器学习
少控科技34 分钟前
QT新手日记025 - W002程序代码
开发语言·qt
C++ 老炮儿的技术栈44 分钟前
Qt中自定义 QmyBattery 电池组件开发
c语言·开发语言·c++·windows·qt·idea·visual studio
落雨盛夏1 小时前
深度学习|李哥考研——(无)监督学习相关分类
深度学习·学习·分类
jrlong1 小时前
DataWhale大模型基础与量化微调task4学习笔记(第 1章:参数高效微调_PEFT技术综述)
笔记·学习
leiming61 小时前
linux 进程学习之信号
linux·运维·学习
zhangrelay1 小时前
thinkpad等笔记本电脑在ubuntu等linux系统下电池校准如何做?
笔记·学习