一、Qt简介与环境搭建

大家好,我是你们这门课的老师。今天咱们聊聊Qt——这个在嵌入式、桌面和移动开发领域都占有一席之地的框架。说实话,我最早接触Qt是在做工业控制项目的时候,那时候被它的跨平台能力惊艳到了。你想想看,一套代码能在Windows、Linux、甚至嵌入式板子上跑,这得多省事?

1.1 Qt发展史:从奇趣科技到诺基亚,再到如今

Qt的故事得从1991年说起。当时两位挪威程序员——Haavard Nord和Eirik Chambe-Eng,在开发一个跨平台的图形界面框架。嗯,就是Qt的前身。1995年,他们正式发布了Qt 1.0版本。

我个人觉得,Qt发展史上几个关键节点特别值得记住:

  • 1995年:Qt 1.0发布,支持Unix和Windows
  • 2005年:Qt 4.0发布,引入了强大的信号与槽机制
  • 2008年:诺基亚收购Qt,开始主攻移动端
  • 2012年:Digia接手Qt,Qt 5.0发布
  • 2020年:Qt 6.0发布,全面拥抱C++17和现代图形API

我在项目中遇到过不少用Qt 4的老项目,迁移到Qt 5时踩了不少坑。说白了,版本升级不是小事,但Qt的向后兼容性做得还算不错。

1.2 Qt应用领域:嵌入式、桌面、移动

Qt能干什么?我简单列几个场景:

领域 典型应用 我的经验
嵌入式 车载系统、工业HMI、医疗设备 做过一个车载仪表盘,Qt Quick渲染流畅
桌面 WPS Office、VirtualBox、Autodesk Maya WPS就是Qt写的,你想想看
移动 跨平台App、即时通讯工具 移动端性能不如原生,但开发效率高

你可能会问:为什么选Qt而不是别的?我个人习惯是:如果项目需要跨平台、界面复杂、对性能有要求,Qt是首选。尤其是嵌入式领域,Qt的轻量级和硬件加速能力,真的没话说。

核心知识点:Qt不是只能做界面。它的网络模块、数据库模块、XML处理、多线程支持,都是工业级的。说白了,Qt是一个完整的应用开发框架,不只是画几个按钮。

1.3 Qt Creator安装与配置

好,咱们动手吧。安装Qt Creator其实很简单,但有几个坑我得提前说。

第一步:下载安装包

去Qt官网下载在线安装器。我建议你选开源版本,除非公司买了商业许可。安装时注意:

  • 选择组件时,勾选你需要的Qt版本(比如Qt 6.5)
  • 勾选Qt Creator IDE
  • 勾选对应的编译器(MinGW或MSVC)

注意:我曾经因为没勾选MinGW,结果编译时找不到编译器,折腾了半天。所以安装时一定要看清楚组件列表。

第二步:配置编译器

安装完成后,打开Qt Creator,进入「工具」→「选项」→「Kits」→「编译器」。检查一下编译器是否自动检测到了。如果没有,手动添加路径。

我个人习惯用MinGW,因为它是开源的,而且和Qt配合得很好。MSVC的话,如果你在Windows上做Windows专属开发,也可以考虑。

第三步:验证安装

新建一个项目,选「Qt Widgets Application」,一路默认。如果能编译通过,恭喜你,环境搭好了。

1.4 第一个Qt程序:Hello World

终于到了写代码的环节。咱们写一个最简单的Hello World,感受一下Qt的编程风格。

#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QLabel label("Hello, Qt!");
    label.show();

    return app.exec();
}

这段代码干了什么?

  • QApplication:每个Qt程序都需要一个应用对象,管理事件循环
  • QLabel:一个标签控件,显示文本
  • label.show():显示窗口
  • app.exec():进入事件循环,等待用户操作

你编译运行后,会看到一个窗口,上面写着「Hello, Qt!」。嗯,就这么简单。

小技巧:如果你用的是Qt Creator,可以直接点左下角的绿色三角运行。快捷键是Ctrl+R(Windows/Linux)或Cmd+R(Mac)。

我第一次写Qt程序时,觉得这跟MFC比简直太清爽了。没有复杂的消息映射,没有繁琐的窗口注册。说白了,Qt把底层细节都封装好了,你只需要关注业务逻辑。

知识体系总览

为了让你对本章内容有个整体认识,我画了一张图:

Qt简介与环境搭建 Qt发展史 1991年:诞生于挪威 2008年:诺基亚收购 2020年:Qt 6发布 应用领域 嵌入式:车载、HMI 桌面:WPS、VirtualBox 移动:跨平台App 环境搭建 下载安装包 配置编译器 验证安装 第一个Qt程序:Hello World QApplication → QLabel → show() → exec()

这张图把本章的知识点串起来了。你看到没?从发展史到应用领域,再到环境搭建和第一个程序,是一条完整的链路。我个人觉得,学Qt不能只盯着代码,得先理解它「从哪里来、能干什么」,这样学起来才有方向感。

本章小结:我们了解了Qt的发展历程、应用领域,完成了开发环境搭建,并成功运行了第一个Qt程序。这些基础打牢了,后面学信号与槽、布局管理、网络通信才会更顺畅。

可可精品资料库