1、Qt简介
Qt是一个跨平台的应用程序C++开发类库,支持Windows、Linux、macOS等各种桌面平台,也支持iOS、Android等移动平台,还支持各种嵌入式系统,是应用非常广泛的跨平台C++开发类库。
Qt最早是由挪威的Haavard Nord和Eirik Chambe-Eng在1991年开始开发的,在1994年发布,并成立了一家名为Trolltech的公司。Trolltech公司在2008年被诺基亚公司收购,2012年,Qt被Digia公司收购,2014年从Digia公司拆分出来成立了独立的Qt公司,专门进行Qt的开发、维护和商业推广。
Qt的许可类型分为商业许可和开源许可,开源许可的Qt就已经包含非常丰富的功能模块,可用于Qt学习和一般的应用程序开发。
2、Qt的下载与安装
在Python中使用PyQt5编写程序可以只安装PyQt5,而不必安装Qt的开发环境。但是为了使用Qt的IDE(即Qt Creator)的一些功能如UI窗体可视化设计、Qt类库帮助信息查找、资源文件管理等,安装Qt是有必要的。
从Qt官网可以下载最新版本的Qt软件。Qt分为商业版和社区版,社区版就是具有开源许可协议的免费版本。Qt的版本更新比较快,这里是用的是Qt 5.12.2版本。
下载的Windows平台的Qt离线安装文件是一个可执行文件,运行文件就可以开始安装。安装过程与一般的Windows应用程序安装过程一样,按照向导进行操作即可。
·使用MSVC(Microsoft Visual C++)编译器的模块,包括MSVC 2015 64-bit、MSVC 2017 32-bit和MSVC 2017 64-bit。若要安装这几个模块,需要在计算机上预先安装相应版本的Microsoft Visual Studio。这里无需安装这些模块。
·MinGW 7.3.0 32-bit编译器模块(根据计算机选择32位或者64位)。MinGW(Minimalist GNU for Windows)是Windows平台上使用的GNU工具集的导入库的集合。为了使用Qt的IDEas Qt Creator,必须安装至少一个编译器,可以选择安装这个模块。
·用于UWP平台的编译器模块。UWP(Universal Windows Platform)是Windows 10中的编译模块,有不同CPU和编译器类型的UWP模块,这里无需安装。
·用于Android平台的编译模块,包括Android x86、Android ARM64-v8a等,这是用于Android平台开发的编译模块,这里无需安装。
·Sources是Qt C++类库的源程序,这里无需安装。
·Qt Charts是二维图表模块,用于绘制柱状图、饼图、曲线图等常用二维图表。对于Python,有相应的PyQtChart包,选择安装此模块,便于查看相关类的帮助信息。
·Qt Data Visualization是三维数据图表模块,用于数据的三维显示,如散点的三维空间分布、三维曲面等。对于Python,有相应的PyQtDataVisualization包,选择安装此模块,便于查看相关类的帮助信息。
·Qt Purchasing、Qt Virtual Keyboard、Qt WebEngine等其他模块,这些模块可以根据自己的需要选择是否安装。
·Qt Script(Deprecated)是脚本模块,这是个已经过时的模块,无须安装。
·Qt Creator 4.8.2是用于Qt程序开发的IDE,在开发PyQt5的程序时需要使用此软件进行窗体可视化设计、查阅类的帮助信息等,必须安装(自动)。
·Qt Creator 4.8.2 CDB Debugger support for Qt Creator,是用于支持在Qt Creator中进行程序调试的模块,可以不安装。
·MinGW 7.3.0是MinGW编译工具链,需要安装。
·Strawberry Perl是一个Perl语言工具,无须安装。
3、Qt的几个工具软件
安装完成后,在Windows“开始”菜单里建立的“Qt 5.12.2”程序组内容如下图所示。
程序组中的一个主要程序是Qt Creator 4.8.2(Enterprise),它是用于开发Qt程序的IDE,是Qt的主要工具软件。
根据选择安装的编译器模块会建立相应的几个子分组,每个分组下面都有以下3个工具软件。
·Qt Assistant是一个独立的查看Qt帮助文档的工具软件。在Qt Creator中也可以方便地查看Qt帮助文档,基本用不着这个软件。
·Qt Designer是一个进行窗体可视化设计的工具软件。Qt Creator中也有一个内置的窗体可视化设计工具软件(本书称之为UI Designer),而且UI Designer可以为界面组件的信号生成槽函数框架,所以在本书中不使用这个独立的Qt Designer,而使用Qt Creator内置的UI Designer。
·Qt Linguist是一个编辑语言资源文件的工具软件。