前话
假如我们要用 QT 做个天气预报或者说天气查询的软件,首先,抛开界面不讲,最起码要显示一下感兴趣的对应天气数据信息对吧?天气数据信息从哪里来?怎么拿到数据?拿到数据可以直接用吗?(不能直接用的话怎么进行数据的分析处理呢)
这时候,需要导入新的知识点,那就是QT 的网络编程了。
今天,我们就通过一个简单的例子,了解一下QT的网络编程。
例子简介
(1)获取一条天气信息(Json格式),分析数据,提取出城市、温度、以及风力的数据进行显示;
(2)通过输入下载地址,实现文件的下载;
效果:(这里是基于上一篇博客的实时时钟项目添加的,所以上面显示时间的那两行可以自觉忽略)
代码
(1) myweather.ui文件
(2) myweather.h文件
#ifndef MYWEATHER_H
#define MYWEATHER_H
#include <QMainWindow>
#include <QUrl>
QT_BEGIN_NAMESPACE
namespace Ui { class MyWeather; }
QT_END_NAMESPACE
class QNetworkAccessManager;
class QNetworkReply;
class QFile;
class MyWeather : public QMainWindow
{
Q_OBJECT
public:
MyWeather(QWidget *parent = nullptr);
void startRequest(QUrl url);
~MyWeather();
private:
Ui::MyWeather *ui;
QNetworkAc