Qt 的准备知识

Qt 的准备知识_第1张图片

文章目录

  • 1. Qt 背景介绍
  • 2. 搭建 Qt 开发环境
  • 3. 认识 Qt Creator
    • 3.1 main.cpp
    • 3.2 widget.h
    • 3.3 widget.cpp
    • 3.4 Forms
    • 3.5 .pro文件

1. Qt 背景介绍

Qt 是⼀个 跨平台的 C++ 图形用户界面应用程序框架 。它为应用程序开发者提供了建立艺术级图形界⾯所需的所有功能。它是完全⾯向对象的,很容易扩展。Qt 为开发者提供了⼀种基于组件的开发模式,开发者可以通过简单的拖拽和组合来实现复杂的应用程序,同时也可以使用 C++ 语⾔进行高级开发。

图形用户界面 :指采用图形⽅式显示的计算机操作用户界面,是计算机与其使用者之间的对话接⼝,是计算机系统的重要组成部分。

Qt 的应用场景:
Qt 的准备知识_第2张图片
目前最新的版本是 Qt 6,但是相对来说 Qt 6 和 Qt 5 之间的核心功能区别不大,我们这里仍然使用 Qt 5 版本。

Qt 的优点:
Qt 的准备知识_第3张图片
这里的内存回收机制是半自动的垃圾回收,能够简化内存释放,也可能尽可能小的影响程序的运行效率。

2. 搭建 Qt 开发环境

Qt ⽀持多种开发⼯具,其中比较常⽤的开发⼯具有:Qt Creator、Visual Studio、Eclipse。我们这里主要使用Qt Creator。

Qt SDK 的下载和安装:
Qt 下载官⽹
Qt 的准备知识_第4张图片
安装过程中我们需要选择部分组件;说明:其他未安装的组件在使用时可以另行添加。
Qt 的准备知识_第5张图片
Qt 的准备知识_第6张图片
安装好QT之后,我们需要配置一下环境变量。
Qt 的准备知识_第7张图片
我们将这个路径配置到我们的PATH里。
Qt 的准备知识_第8张图片
在这里插入图片描述
这些都是我们安装好的(我这里安装的是5.14.0版本):
Qt 的准备知识_第9张图片
第一个Assistant是QT的离线文档,可以去帮助我们去搜索。

第二个Designer是一个图形化的设计界面的工具,可以通过拖拽控件来快速生产界面。后面会经常使用,但是我们是通过QT Creator去使用。

第三个Linguist是对国际化进行支持,允许你单独创建一个语言配置文件,把界面上需要用到的各种文字,都配置到文件中,并且在文件中提前的把各种语言的翻译都配置进去。就可以起到"一键切换语言"的效果。

第四个就是QT的命令行,可以使用一些QT SDK命令。第五个就是QT的集成开发环境了。

3. 认识 Qt Creator

从 开始菜单 或者 快捷方式 打开 Qt Creator 集成开发环境,启动之后看到类似下⾯的界面:
Qt 的准备知识_第10张图片
然后我们点开文件,新建文件和项目。
Qt 的准备知识_第11张图片
我们这里选择第一个,它是开发一个GUI的模板。
Qt 的准备知识_第12张图片
这一步是构建系统,通过QT写的程序,涉及到一系列的 “元编程” 技术(通过代码来生成代码)。
Qt 的准备知识_第13张图片
这里的Base class的意思是:使用QT Creator创建项目,会自动的生成一些代码出来,生成的代码中就有一个类。此处就是要选择这个自动生成的类的父类是谁。
Qt 的准备知识_第14张图片
QMainWindow表示完整的应用程序窗口(包含菜单栏,工具栏,状态栏等等)。
QWidget表示一个控件(窗口上的一个具体元素,比如输入框,按钮,下拉框等等)。
QDialog表示一个对话框。

我们新手先使用QWidget。
Qt 的准备知识_第15张图片
Class name就是自动生成的类,Base class就是这个父类。下面两个生成的文件是和类名关联的,但不是强制的。
在这里插入图片描述
勾选上这个Generate form可以更加方便我们去构建图形化界面。
Qt 的准备知识_第16张图片
这个是和上面国际化相关的,我们在这里先不考虑。
Qt 的准备知识_第17张图片
这里是选择一下基于哪个编译器的QT SDK来构建后续代码。
Qt 的准备知识_第18张图片
这样我们就创建好了。运行情况如下:
Qt 的准备知识_第19张图片

3.1 main.cpp

这个自动生成的main函数,做了哪些事情呢
Qt 的准备知识_第20张图片

3.2 widget.h

下面我们来看一下Widget这个类:
Qt 的准备知识_第21张图片
首先看一下这个类的声明:
Qt 的准备知识_第22张图片

3.3 widget.cpp

Qt 的准备知识_第23张图片

3.4 Forms

在这里插入图片描述
当我们点击widget.ui时,就是弹出设计页(Qt Designer)。
Qt 的准备知识_第24张图片
此时我们点击左边的"编辑"按钮:
Qt 的准备知识_第25张图片
此时显示的内容就是.ui文件的本体了。这个内容会被我们的Qt Designer当作图形化界面。这里面的格式称为xml格式。它和 html 格式非常相似,都是使用才对的标签来表示数据。但是,html的标签是固定的,每个标签的含义是由专门的委员会决定的,所有的浏览器都按照这个规则来解释。而 xml 里的标签,什么标签,什么含义,都由程序员自己定义。

Qt 中使用 xml 文件就是去描述程序的界面是啥样的,进一步qmake会调用相关的工具,依据这个 xml 文件生成一些C++代码,从而将完整的界面构造出来

3.5 .pro文件

Qt 的准备知识_第26张图片
.pro类似之前 Linux 中学过的Makefile文件。qmake搭配.pro起到的作用就和Makefile是类似的。Qt Creator把这个过程中编译的细节都封装好了,不需要过多关注,只需要点击运行按钮就可以直接编译运行了。

上面看到的.h .cpp .pro .ui都是源代码,如果编译运行Qt 项目,构建过程中还会生成一些中间文件
Qt 的准备知识_第27张图片
Qt 的准备知识_第28张图片
下面我们来看一下这个.h文件:
Qt 的准备知识_第29张图片

你可能感兴趣的:(Qt,qt)