你好,Qt!
你好 Qt
在Qt Creator中创建一个图形用户界面的项目,从而生成一个可以显示Hello World字符串的程序。
1.创建程序

2.输入项目名称和创建路径

3.选择构建方式
有QMake、CMake等构建方式,本次采用QMake的构建模式。

4. 设置类信息

5. 选择构建方式

6.选择版本构建系统
如有需求,需要安装Git等工具。

最后点击完成。

文件说明
项目建立完成后会直接进入编辑模式。界面的右边是编辑器,可以阅读和编辑代码。如果觉得字体太小,则可以使用快捷键Ctrl+“十”(即同时按下Ctrl键和十号键)来放大字体,使用Ctrl十“一”(减号)来缩小字体,或者使用Ctrl键十鼠标滚轮,使用Ctl十0(数字)可以使字体还原到默认大小。再来看左边侧边栏,其中罗列了项目中的所有文件。
| 文件 | 说明 |
|---|---|
| helloworld.pro | 该文件是项目文件,其中包含了项目相关信息 更详细的说明 |
| helloworld.pro.user | 该文件中包含了与用户有关的项目信息 |
| helloworld.h | 该文件是新建的helloworld类的头文件 |
| helloworld.cpp | 该文件是新建的helloworld类的源文件 |
| main.cpp | 该文件中包含了main()主函数 |
| helloworld.ui | 该文件是设计师设计的界面对应的界面文件 |
界面设计
双击Ui文件,进入设计模式。

添加控件,拖动Label控件到主设计界面,双击主界面的Lable控件,修改显示文本或在属性框中修改text属性。

运行与发布
运行
可以使用快捷键Ctrl+R或者通过按左下角的运行按钮来运行程序。如果是第次使用,则会弹出“保存修改”对话框,这是因为刚才在设计模式更改了界面,而helloWorld.ui文件被修改了但是还没有保存。现在要编译运行该程序,就要先保存所有文件。可以选中“构建之前总是先保存文件”选项,则以后再运行程序时就可以自动保存

再看一下项目目录中的文件可以发现,E:\Code\build-HelloWorld-Desktop_Qt_5_15_2_MinGW_32_bit-Debug\debug目录下又多了一个build-HelloWorld-Desktop_Qt_5_15_2_MinGW_32_bit-Debug文件夹,这是默认的构建目录。也就是说,Qt Creator将项目源文件和编译生成的文件进行了分类存放,helloworld文件夹中是项目源文件,这个文件夹存放的是编译后生成的文件。进人该文件夹可以看到,这里有3个Makefile文件和一个ui_helloworld.h文件,还有两个目录debug和release,如图2-8所示。release文件夹是空的,进入debug文件夹,有3个.o文件和一个.cpp文件,它们是编译时生成的中间文件,可以不必管它,而剩下的一个helloworld.exe文件便是生成的可执行文件。

双击直接运行HelloWorld.exe程序会报错

警告对话框,提示缺少Qt5 Cored.dl等文件,可以想到应用程序运行是需要dl动态链接库的,可以去Qt的安装目录下寻找该文件。
方法一:在Qt安装的bin目录下复制到与exe程序同一目录下。
方法二:设置把Qt的bin路径添加到环境变量中。
发布
1.生成Release程序

切换后,构建一个新目录 E:\Code\build-HelloWorld-Desktop_Qt_5_15_2_MinGW_32_bit-Release 打开release文件夹。如何在其他电脑运行程序呢?
如果要使Release版本的程序可以在别人的计算机上运行(当然,对方计算机也要是Windows平台),还需要将几个dll文件与其一起发布。可以在桌面上新建一个文件夹,重命名为“我的第一个Qt程序”,然后将release文件夹中的helloworld,exe复制过来,再去Qt安装目录的bin目录中将libgcc_sdw2-l.dll、libstdc++一6.dll、libwinpthread-1.dl、Qt5Core.dll、Qt5Gui.dll和Qt5 Widgets.dll这6个文件复制过来。另外,还需要将plugins目录中的platforms文件夹
复制过来(不要修改该文件夹名称),里面只需要保留qwindows.dl文件即可。现在整个文件夹一共有19.3MB,如果使用WinRAR等打包压缩软件对它进行压缩,就只有6MB了,已经到达了可以接受的程度,这时就可以将压缩包发布出去了。Liunx平台也是将.so等文件复制到同一目录,打包成zip文件发布即可。

另外,Qt提供了一个windeployqt(仅Windows平台)工具来自动创建可部署的文件夹。例如,生成的release版本可执行文件在E:\Code\exe文件夹中,则只需要在开始菜单的Qt5.15.2菜单中启动Qt的CMD命令行工具,然后输入下面命令即可:
1 | windeployqt.exe E:\Code\exe\HelloWorld.exe |

此方法会拉取很多不需要的dll,如果存在多个版本的Qt还会存在windeployqt可能会拉取错误的path路径下的dll,保留一个路径即可。









