QT 基础:QT SDK 下载、配置、新建项目、项目代码解释

目录

[1. QT SDK 的下载](#1. QT SDK 的下载)

[2. QT 配置](#2. QT 配置)

[2.1 配置过程](#2.1 配置过程)

[2.2 为什么配置](#2.2 为什么配置)

[3. 软件介绍](#3. 软件介绍)

[4. QT 新建项目](#4. QT 新建项目)

[4.1 新建文件或者项目:](#4.1 新建文件或者项目:)

[4.2 选择项目模板](#4.2 选择项目模板)

[4.3 选择文件存放路径和设置项目名称](#4.3 选择文件存放路径和设置项目名称)

[4.4 选择构建工具](#4.4 选择构建工具)

[4.5 类信息配置:](#4.5 类信息配置:)

[4.6 选择翻译文件](#4.6 选择翻译文件)

[4.7 选择构建套件](#4.7 选择构建套件)

[4.8 项目摘要](#4.8 项目摘要)

[4.9 成功构建项目​编辑](#4.9 成功构建项目编辑)

[5. 项目代码解释](#5. 项目代码解释)

main.cpp

widget.h

widget.cpp

widget.ui

[.pro 文件](#.pro 文件)


1. QT SDK 的下载

官网:Index of /archive/qt

清华源:Index of /qt/archive/qt/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

  • dmg 是 mac 版本的
  • run 是 Linux 版本的

安装时候的注意事项:

MinGW 是 QT SDK 中内置的 C++ 编译器,就是一个 windows 版本的 gcc/g++

主要就是把两个 MingGW 编译器选上

2. QT 配置

2.1 配置过程

给装好的 QT,配置一下环境变量

先找到 qt 中存放动态库和可执行程序的路径,如:D:\Software\qt\5.14.2\mingw73_64\bin

D:\Software\qt 是我 QT 安装的时候选择的路径。

Windows 上打开:

编辑环境变量:

可以选择在用户变量的 Path 中添加路径或者系统变量的 Path 中添加路径:

新建后将刚才的动态库路径添加进去,可以尽量往前放,不然可能会出现环境变量冲突的问题(有类似的环境变量,优先使用了别的环境了)

2.2 为什么配置

为什么要配置这个环境变量?

  • 让操作系统 / QT Creator 工具,能够找到 QT SDK 中提供的 exe
  • 也是运行 QT 程序的时候,能够找到对应的动态库

环境变量,也可以理解成一种简单的 "进程间通信" 机制。

相当于给别人留了张小纸条,告诉他去哪里找自己

3. 软件介绍

下好之后可以看到下面这些软件,这几个就是 QT SDK 自带的一些工具程序,也都是我们在开发中需要关注的。

Assistant 是 QT 自带的离线版本的官方文档:

Designer 是 QT 设计师,图形化的设计界面的工具,通过拖拽控件的方式来快速生成界面,后面经常使用,但是搭配 QT Creator 来使用

Linguist 是 QT 语言家,作用是对国际化进行支持,有的时候,写的程序,是要和国际接轨的。

它允许你单独创建一个语言配置文件,把界面上需要用到的各种文字,都配置到文件中,并且在文件中提前的把各种语言的翻译都配置进去。

就可以起到 "一键式切换语言" 的效果

通过简单的 api 就可以切换语言配置,就可以很容易得分实现兼容不同国家地区效果了。

QT Creator 是 QT 的集成开发工具(学习 QT 过程中主要使用的工具)

4. QT 新建项目

4.1 新建文件或者项目:

4.2 选择项目模板

项目模板 说明
Application Qt 应用程序,包括普通窗体程序和 QtQuick 程序
Library 可以创建动态库、静态库以及 Qt Quick 扩展插件、QtCreator 自身插件
其他项目 可以创建单元测试项目、Qt4 设计师自定义控件、子目录项目等
Non-Qt-Project 非 Qt 项目。可以创建纯 C 或纯 C++ 项目
Import Project 导入项目。从版本控制系统管理的软件项目导入旧的项目

4.3 选择文件存放路径和设置项目名称

4.4 选择构建工具

  • qmake 是老牌的 QT 构建工具
  • CMake 并非是 QT 专属,很多的开源项目都会使用 CMake
  • Qbs 是新一代的 QT 构建工具(实际上用的人很少)

构建系统,通过 QT 写的程序,涉及到一系列的 "元编程" 技术,通过代码来生成代码。

QT 框架会在编译的时候,自动先调用一系列的生成工具,基于你自己写的代码,生成一系列的其他的 C++ 代码,最终编译的代码,也是最后生成的这些代码。

4.5 类信息配置:

使用 QT Creator 创建项目,会自动的生成一些代码出来。

生成的代码就包含一个类。

Base class 就是要选择这个自动生成的类的父类是谁。

此处生成的文件名是和类名关联的,这里的关联并非是强制的(推荐搞成一样的)

(Java 中,类名和文件名是必须要一致的)

  • QMainWindows 是完整的应用程序窗口(可以包含菜单栏,工具栏,状态栏...)
  • QWidget 表示一个控件(窗口上的一个具体的元素,输入框,按钮,下拉栏,单选按钮,复选按钮)
  • QDialog 表示一个对话框
  • QT 中内置的类都是以 Q 前缀开头的

这里可以先选择 QWidget

这个 form file 非常关键

QT 中创建图形化界面的程序,有两种方式:

  1. 直接通过 C++ 代码的方式创建界面
  2. 通过 form file,以图形化的方式来生成界面

有了这个 form file 姐可以使用 QT Designer 或者直接使用 QT Creator 来编辑这个 ui 文件,从而以图形化的方式快速方便的生成图形化界面。

4.6 选择翻译文件

此处暂时不关注,和国际化相关的

4.7 选择构建套件

这里选择一下基于哪个编译器的 QT SDK 来构建后续代码

Desktop Qt 5.14.2 MinGW 64-bit 是一个完整的桌面开发环境,包含:

  • Qt 5.14.2 库文件
  • MinGW 64 位编译器(g++)
  • GDB 调试器
  • 适用于 Windows 桌面的构建配置

4.8 项目摘要

可以选择 git 将项目纳入版本控制系统

4.9 成功构建项目

通过左下角的运行按键即可构建项目

如果报错,可能是文件路径中存在中文,建议设置全英文路径

5. 项目代码解释

main.cpp

widget.h

widget.cpp

widget.ui

.pro 文件

相关推荐
葡萄成熟时 !30 分钟前
泛型知识笔记
开发语言·笔记·python
新时代牛马1 小时前
SPL-TPL 链式启动:spl.c 与CONFIG_TPL 三阶段加载
c语言·开发语言
布莱克6051 小时前
链表详解:定义、作用、应用场景及与数组的区别(C/C++ 实战)
c语言·开发语言·c++·链表
2601_966949651 小时前
实时行情中的成交量 Volume 到底是什么?包含盘中撤单量吗?从交易数据语义到 QuantDash 实战解析
开发语言·人工智能·python·量化·quantdash·量化数据源
开开心心就好2 小时前
电子教鞭工具支持画框写字插图片功能齐全
android·开发语言·前端·javascript·人工智能·pdf·html
zx_741484812 小时前
【Python入门】爬虫实战:Requests + XPath 从基础到实战
开发语言·爬虫·python
吴声子夜歌2 小时前
Java——开发中通用的方法和准则(二)
java·开发语言·php
江屿风2 小时前
C++OJ题经验总结(竞赛)5
开发语言·c++
溪语流沙2 小时前
【Python项目实战】虚拟环境与依赖管理:venv / pip / requirements.txt实操
开发语言·python·pip