跨平台开发工具Qt入门教程:创建你的第一个GUI项目
Qt(发音为“ cute”,而不是“ cu-tee”)是一个跨平台框架,通常用作图形工具包,它不仅创建CLI应用程序中也非常有用。而且它也可以在三种主要的台式机操作系统以及移动操作系统(如Symbian,Nokia Belle,Meego Harmattan,MeeGo或BB10)以及嵌入式设备,Android(Necessitas)和iOS的端口上运行。
接下来将创建我们的第一个项目。打开File > New file or project > Other Projects > Empty Qt Project
按照向导,在选择项目文件夹和名称,并选择要使用的Qt版本之后,进入如图所示界面
这是项目文件(扩展名.pro)。Qt使用命令行工具解析这些项目文件,以生成“ makefiles”,这些文件供编译器用来构建应用程序。此工具称为qmake。
在项目文件中,如下的代码是必要的:
TEMPLATE = app TARGET = name_of_the_app QT = core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
- 模板描述要构建的类型。它可以是应用程序,库或简单的子目录。
- TARGET是应用程序或库的名称。
- QT用于指示此项目中正在使用哪些库(Qt模块)。由于我们的第一个应用程序是一个小型GUI,因此我们将需要QtCore和QtGui。
现在让我们添加应用程序的入口点。打开File > New file or project > C++ > C++ Source file 。
再次遵循向导,将文件命名为“ main”,就可以完成了。您会注意到,在项目文件中,Qt Creator已自动添加了新行:
TEMPLATE = app TARGET = name_of_the_app QT = core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets SOURCES += main.cpp
头文件和源文件可以手动添加
HEADERS += first_file.h second_file.h SOURCES += first_file.cpp second_file.cpp
或者
HEADERS += first_file.h second_file.h SOURCES += first_file.cpp second_file.cpp
如果使用Qt Creator的向导,则会自动完成。
Qt应用程序的最小源代码是
#includeint main(int argc, char **argv) { QApplication app (argc, argv); return app.exec(); }
QApplication是非常重要的一类。它要处理输入参数,还要处理很多其他事情,最值得注意的是event loop。事件循环是一个等待用户在GUI应用程序中输入的循环。
调用app.exec()时,将启动事件循环。
通过单击左下方的绿色箭头,Qt Creator将对其进行编译和执行。它会有一段时间的响应,其实是事件循环正在运行并正在等待事件,例如在GUI上单击鼠标,但是我们未提供任何要处理的事件,因此它将无限期运行。
让我们添加一些要显示的内容。
#include#include int main(int argc, char **argv) { QApplication app (argc, argv); QPushButton button ("Hello world !"); button.show(); return app.exec(); }
今天分享的内容就到这里,下一篇文章中我们讲解如何进行编译。