【QT开发专题-天气预报】1. 效果演示、技术分析

本专栏将会在未来4个月内,完成以下几个 Qt 项目:

  • 《天气预报》
  • 《文本编辑器》
  • 《俄罗斯方块》
  • 《绘图板》
  • 《网络聊天室》
  • 《串口助手》

完成时间预计在 2022-12-31,文章数目在80篇左右,更新完毕之后,价格恢复到 ¥299

专栏优势

  • 每个项目都是从零新建工程开始
  • 良好的代码风格
  • 详细的开发笔记(提供原始的 MarkDown 格式笔记,订阅后找作者领取)
  • 提供完整的项目源码(订阅后找作者领取)



本节会实现一个相对完整的天气预报项目,该项目就是通过 http 接口访问 http 服务器,获取天气数据,然后展示出来

本节实现的 http 天气预报,整体效果如下:

【QT开发专题-天气预报】1. 效果演示、技术分析_第1张图片

【QT开发专题-天气预报】- 文章目录(18篇)

01. 效果演示技术分析
02. JSON 简洁
03. JSON 对象和数组
04. JSON 在线解析
05. Qt 中 JSON 相关的类
06. 构建 JSON字符串
07. 解析 JSON字符串
08. HTTP 必知必会
09. 调试利器 Postman
10. Qt 中 HTTP 相关的类
11. 新建工程,右键菜单
12. 完成界面布局
13. 窗口随鼠标移动
14. 请求天气数据
15. 解析天气数据
16. 更新 UI 界面
17. 获取城市编号
18. 绘制温度曲线



在右上角输入要查询的城市,然后点击查询按钮,就会发送 http 请求给服务器,请求回来的天气数据为 JSON 格式

通过解析 JSON 可以获取以下信息:

  • 今天的信息

    温度、湿度、风向、风力、天气类型(晴、多云、小雨等)、PM2.5、温馨提示、感冒指数、日出日落

  • 未来15天的信息

    日期、星期、天气类型(晴、多云、小雨等)、PM25、最高温、最低温

在后面的几篇博客中,会从零新建项目开始,实现整个 HTTP 天气预报的项目

该项目涉及的技术点如下:

1. 样式表的设置

合理地使用样式表,可以使界面更加美观,这里设置的样式表如下:

  • 背景图片

    为整个窗体设置一张背景图片

  • 背景色

    设置控件背景透明,或者设置一个透明度

  • 圆角

    为控件设置圆角

  • 字体颜色和大小

    为控件设置合适的字体颜色和字体大小

2. HTTP 请求

根据 HTTP 服务端提供的接口,发送 http 请求,获取天气数据


3. JSON 数据格式

HTTP 服务端返回的天气数据,是 JSON 格式

使用 Qt 提供的,解析 JSON 相关的类,可以很方便地解析出其中的字段


4. 事件

为了界面的美观,我们将窗口设置为无标题栏,这样就无法通过右上角的【关闭】按钮,退出程序。

因此增加了右键菜单退出的功能

还重写了鼠标移动事件,让窗口可以跟随鼠标移动


5. 绘图

绘制高低温曲线:

根据每天高低温数据,可以绘制一个曲线,更直观地展示温度变化趋势


6. 资源文件

根据不同的天气类型,还可以用不同的图标进行展示,更加直观

而这些图标通常会放到资源文件中,这样它们可以一同被打包进 Qt 的可执行程序中

你可能感兴趣的:(《QT开发笔记-专题篇》,qt,c++,物联网,linux,嵌入式硬件,1024程序员节)