目录
- 前言
- [一、Qt 框架概述](#一、Qt 框架概述)
-
- [1.1 什么是 Qt](#1.1 什么是 Qt)
- [1.2 Qt 的发展历程](#1.2 Qt 的发展历程)
- [1.3 Qt 支持的平台](#1.3 Qt 支持的平台)
- [1.4 Qt 版本与授权方式](#1.4 Qt 版本与授权方式)
- [1.5 Qt 的优势](#1.5 Qt 的优势)
- [1.6 Qt 的主要应用场景](#1.6 Qt 的主要应用场景)
- [1.7 Qt 的成功案例](#1.7 Qt 的成功案例)
- [1.8 Qt 的发展前景与就业方向](#1.8 Qt 的发展前景与就业方向)
- [二、Qt 开发环境搭建](#二、Qt 开发环境搭建)
-
- [2.1 常见开发工具](#2.1 常见开发工具)
- [2.2 Qt SDK 的下载与安装](#2.2 Qt SDK 的下载与安装)
- [2.3 环境变量配置](#2.3 环境变量配置)
- [三、Qt Creator 初体验](#三、Qt Creator 初体验)
-
- [3.1 Qt Creator 界面总览](#3.1 Qt Creator 界面总览)
- [3.2 创建第一个 Qt 项目](#3.2 创建第一个 Qt 项目)
-
- [1. 新建项目](#1. 新建项目)
- [2. 设置项目名称与路径](#2. 设置项目名称与路径)
- [3. 构建系统](#3. 构建系统)
- [4. 选择基类](#4. 选择基类)
- [5. 选择语言与套件](#5. 选择语言与套件)
- [3.3 运行项目与构建结果](#3.3 运行项目与构建结果)
- [四、第一个 Qt 程序:Hello World](#四、第一个 Qt 程序:Hello World)
-
- [4.1 使用按钮实现](#4.1 使用按钮实现)
- [4.2 使用标签实现](#4.2 使用标签实现)
- 五、项目文件结构解析
-
- [5.1 `.pro` 文件关键内容](#5.1
.pro文件关键内容) - [5.2 main.cpp 说明](#5.2 main.cpp 说明)
- [5.1 `.pro` 文件关键内容](#5.1
- [六、Qt 编程常见注意点](#六、Qt 编程常见注意点)
-
- [6.1 命名规范](#6.1 命名规范)
- [6.2 常用快捷键](#6.2 常用快捷键)
- [6.3 帮助文档使用](#6.3 帮助文档使用)
- [6.4 Qt 对象树机制](#6.4 Qt 对象树机制)
- [6.5 Qt 坐标系统](#6.5 Qt 坐标系统)
- 七、总结
前言
本文整理自大量网络资料以及社区内容,并结合个人学习理解,旨在帮助初学者快速了解 Qt 框架的基础知识、开发环境的搭建流程,以及 Qt Creator 的使用方法。
一、Qt 框架概述
1.1 什么是 Qt
Qt 是一个 跨平台的 C++ 图形用户界面(GUI)应用程序开发框架 。
它为开发者提供了创建高质量桌面、移动以及嵌入式界面的完整工具链。
Qt 的主要特点:
- 完全面向对象,基于 C++ 开发;
- 使用组件化设计,开发者可以通过拖拽和组合快速构建 UI;
- 同时支持可视化操作和底层 C++ 编程。
简单来说,Qt 就像是 C++ 世界的"前端框架",让我们能方便地构建图形界面应用。
补充理解 :
Qt 的定位与 MFC(Windows)、GTK(Linux)或 Cocoa(macOS)类似,但它实现了真正的跨平台开发。使用相同代码,就能编译出 Windows、Linux、macOS、Android、iOS 等平台的应用。
1.2 Qt 的发展历程
- 1991 年:由 Trolltech(奇趣科技)创建;
- 1996 年:进入商业化阶段,成为 KDE 桌面环境的基础;
- 2008 年:被诺基亚收购;
- 2012 年:Digia 接手 Qt 开发;
- 2014 年:Qt 5.3 发布,正式支持 iOS、Android、嵌入式平台;
- 至今:Qt 6 已成为主流版本,但 Qt 5 依然在企业中广泛使用。
1.3 Qt 支持的平台
Qt 几乎支持所有主流系统:
- Windows:XP、7、10、11 等;
- Linux / Unix:如 Ubuntu、Solaris、FreeBSD;
- macOS;
- 嵌入式系统(Embedded Linux、Windows CE);
- 移动平台:Android、iOS。
1.4 Qt 版本与授权方式
Qt 提供两种授权方式:
| 授权类型 | 特点 |
|---|---|
| 商业授权 | 需购买许可,可闭源开发,获得官方技术支持 |
| 开源授权 | 免费使用,需遵守 LGPL/GPL 协议 |
在学习阶段,使用 开源版本 即可。
当前 Qt 的最新版本是 Qt 6,但 Qt 5 依旧是多数教学与企业项目的标准版本。
1.5 Qt 的优势
- 跨平台开发:一次编写,多处运行;
- API 简洁,易于学习;
- 内存管理机制优化:对象树结构能减少手动释放;
- 可视化设计器:支持拖拽式 UI 构建;
- 生态完善:社区活跃,资料丰富;
- 可用于嵌入式开发与工业界面系统。
1.6 Qt 的主要应用场景
- 桌面应用程序:如文件管理器、播放器、绘图工具;
- 移动应用开发:支持 Android / iOS;
- 嵌入式系统:车载娱乐、智能家居、医疗设备等;
- 跨平台工具软件:如 IDE、仿真平台、科学可视化等。
1.7 Qt 的成功案例
| 应用 | 说明 |
|---|---|
| KDE 桌面环境 | Linux 桌面系统核心环境 |
| WPS Office | 国内常见办公软件 |
| Skype | 跨平台语音通话软件 |
| Google Earth | 三维地图可视化工具 |
| VLC | 开源媒体播放器 |
| VirtualBox | 免费虚拟机软件 |
这些软件都体现了 Qt 的跨平台能力与强大的界面表现力。
1.8 Qt 的发展前景与就业方向
行业方向:
- 物联网与嵌入式系统;
- 车载系统与自动驾驶;
- 工控与智能终端;
- 跨平台桌面工具;
- 教育与仿真可视化系统。
就业分析:
Qt 工程师需求稳定增长。掌握 Qt 开发能力的工程师,通常能在嵌入式、车载 UI、桌面应用等领域获得较高薪资。
二、Qt 开发环境搭建
2.1 常见开发工具
Qt 支持多种 IDE(集成开发环境),常见有:
- Qt Creator
官方推荐的轻量级 IDE,内置 UI 设计器、调试器和构建系统。 - Visual Studio
功能强大,可通过插件支持 Qt 开发。 - Eclipse
通过插件支持 Qt,但较少使用。
建议初学者使用 Qt Creator,它原生支持 Qt 工程结构,操作直观,适合入门。
2.2 Qt SDK 的下载与安装
-
打开官网或镜像源:
-
选择合适版本(推荐 5.14 或以上);
-
安装时注意事项:
- 路径中不要有中文;
- 可断网安装以跳过登录;
- 可选择完整组件或仅 Qt Creator。
2.3 环境变量配置
为了在命令行中直接使用 Qt 工具,需要将 Qt 的 bin 目录添加到系统环境变量 PATH 中。
作用说明:
系统在执行命令时,会自动在 PATH 指定的路径中查找可执行文件,这样你就可以在任意目录下使用 qmake、designer 等命令。
三、Qt Creator 初体验
3.1 Qt Creator 界面总览
Qt Creator 的主界面由以下部分组成:
- 菜单栏:新建/构建/调试等功能;
- 模式栏:欢迎、编辑、设计、调试、项目、帮助;
- 构建栏:包含运行、调试、构建按钮;
- 输出窗格:查看编译、运行、调试输出;
- 左侧边栏:项目文件结构、类视图、Git 分支等。

3.2 创建第一个 Qt 项目
1. 新建项目
选择:
文件 -> 新建文件或项目 -> Application -> Qt Widgets Application

2. 设置项目名称与路径
建议路径不要含中文或空格。

3. 构建系统
默认为 qmake ,按自己的需求选择。
Qt 也支持 CMake,但对于初学者,qmake 更简洁。

4. 选择基类
QWidget:最基础的窗口;QMainWindow:带菜单、工具栏的主窗体;QDialog:对话框类。

5. 选择语言与套件
语言指界面语言(非编程语言),可保留默认。
套件(Kit)选择已安装的 Desktop Qt 版本。

这里的套件取决于电脑安装了哪个版本。如果安装了多个版本就按需选择合适的。

部分版本的Qt creator有这个界面:
是询问是否需要设置版本控制器,如果勾选会自动生成一份.gitignore文件,看个人需求进行选择。
新手可以默认不勾选。

3.3 运行项目与构建结果
点击左下角的"运行"按钮(或快捷键 Ctrl+R),Qt Creator 会自动构建并运行项目,出现一个空白窗口即表示环境配置成功。
四、第一个 Qt 程序:Hello World
4.1 使用按钮实现
在 widget.ui 中拖入一个 PushButton ,设置文本为 "Hello Qt"。
点击运行,即可看到窗口中的按钮。
4.2 使用标签实现
拖入一个 Label 控件,将文本改为 "Hello World"。
构建运行后,就完成了最基本的 Qt 界面程序。
五、项目文件结构解析
| 文件 | 说明 |
|---|---|
.pro |
项目配置文件,用于生成 makefile |
main.cpp |
程序入口 |
widget.h / widget.cpp |
窗口类定义与实现 |
widget.ui |
UI 界面文件(XML 格式) |
5.1 .pro 文件关键内容
pro
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = QtFirst
TEMPLATE = app
SOURCES += main.cpp \
widget.cpp
HEADERS += widget.h
其中:
QT += widgets表示项目使用了 Qt 的 Widgets 模块;TEMPLATE = app表示是一个应用程序;SOURCES与HEADERS分别列出源码与头文件。
5.2 main.cpp 说明
cpp
#include "widget.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
w.show();
return a.exec();
}
其中:
QApplication管理应用生命周期;w.show()显示主窗口;a.exec()启动事件循环。
六、Qt 编程常见注意点
6.1 命名规范
- 类名:首字母大写(如
MainWindow); - 变量名、函数名:小写开头,驼峰命名(如
openFile())。
6.2 常用快捷键
| 操作 | 快捷键 |
|---|---|
| 运行程序 | Ctrl + R |
| 编译项目 | Ctrl + B |
| 注释/取消注释 | Ctrl + / |
| 查找 | Ctrl + F |
| 自动对齐 | Ctrl + I |
| 切换 .h/.cpp | F4 |
6.3 帮助文档使用
不要依赖中文文档,Qt 官方英文文档清晰且权威 。
按下 F1 可直接打开光标所在类或函数的帮助页面。
6.4 Qt 对象树机制
Qt 的对象系统基于 QObject 树结构:
- 创建对象时可以指定父对象;
- 父对象析构时,会自动释放所有子对象;
- QWidget 继承自 QObject,因此 UI 控件之间也具备这种关系。
小结:
这种机制简化了内存管理,但注意不要让栈对象互相持有父子关系,否则可能出现重复析构的问题。
6.5 Qt 坐标系统
- 坐标原点为左上角;
- x 轴向右增加,y 轴向下增加;
- 子控件的坐标总是相对于父控件而言。
七、总结
Qt 是一个成熟、稳定且强大的 C++ 应用开发框架。
它不仅能让你轻松构建桌面 GUI 程序,还能延伸到嵌入式系统、移动端和车载界面开发。
对于刚入门 Qt 的学习者,可以按以下路线学习:
- 了解 Qt 框架与信号槽机制;
- 熟悉 Qt Creator 开发流程;
- 学习常见控件与 UI 设计;
- 了解项目文件结构与构建系统;
- 进阶学习 QMainWindow、QDialog、QWidget 的关系;
- 探索 QML 与 Qt Quick 模块。
学习建议 :
Qt 的核心在于「对象模型 + 信号槽机制 + 跨平台构建系统」。
只要你熟悉 C++,学习 Qt 会是一种非常高效且愉快的体验。
免责声明
本文内容整理自学习笔记及网络资料,仅用于学习与交流目的。
文中涉及的文字、图片及部分资料参考自 Qt 官方文档、社区资源及网络公开资源,版权归原作者所有。
若内容存在疏漏或错误,欢迎读者指出并共同探讨。
本文不代表任何官方立场,也不对因使用本文内容而导致的任何后果负责。
封面图来源于网络,如有侵权,请联系删除!