Qt新建项目与运行窗口

目录

1. 前言

2. 新建项目

3. 项目文件目录分析

4. 总结


1. 前言

        使用Qt之后你会慢慢地发现Qt框架设计的巧妙之处,跟随着Qt给的开发框架进行开发设计可以很容易很高效地完成应用开发,编写出的应用稳定性高、可靠性强。接下来就让我们跟随着Qt Creator的开发流程,快速地开发C++桌面应用。

2. 新建项目

        打开Qt Creator,点击文件→新建文件或项目,如下图所示:

621c81b0fd0f4022ba23817042671863.png

         然后弹出新建项目对话框,如下图所示:

07d0dc5247224a67a173e162ec312e9b.png

         如上图所示,你会看到Application对应有8个选项,第一个是Qt Widgets应用,也就是Qt传统的使用C++语言开发的基于控件的应用,也是我们要选择的开发选项;第二个是Qt Console应用,是用来开发Qt控制台程序;第三、四个是基于Python语言开发的桌面应用,python语言也是Qt当前所支持的开发语言;第五到最后一个是基于QML语言为主要开发框架的应用开发。

        我们选择第一个Qt Widgets Application,然后点击“Choose”,进入以下对话框:

7ff58ded2d2c434eab1470dc21aebedb.png

         给项目命名,并选择项目存放路径,点击“下一步”,进入以下对话框:

0fe6d05c19534f939bf1d2c15d25df9e.png

        这里选择构建系统,默认我们选择qmake,qmake是Qt自带的构建系统。点击“下一步”,进入以下对话框:

eaf353622cb7444180ae6f3eb0a56e3a.png

         既然我们创建的是带有界面的桌面应用,那界面是必不可少的。这里Qt给我们新建好了主界面,默认类名叫MainWindow,这个主界面包含三个文件,分别是mainwindow.h、mianwindow.cpp、mainwindow.ui,我们刚开始可能并不熟悉这三个文件的内容与意义,没有关系,按Qt默认的走,后面慢慢就明白了。

        点击下一步,进入以下对话框:

2b26ea26bcc44b258f2143b8e3d09c39.png

         如果你开发的应用设计多种语言,那这里就要关注了,我们初学者用不到,暂且不管,直接“下一步”,进入以下对话框:

6a71e491ee93499086bb9498d55e0bd3.png

         这里就是我们安装时所选择的MinGW 32-bit编译工具,如果你安装了多个编译工具,就在这里选择。点击“下一步”,进入以下对话框:

19a91f91c6aa44ad9eb5177128277866.png

         这里和版本控制系统有关,所谓版本控制,就是你可以在本地或服务器上保存所有项目的版本,可以在任何时刻返回到任意一个版本。如果没有版本控制系统,你可能在本地存储建立像HelloWorld1.0、HelloWorld1.1、HelloWorld2.0这样的文件夹来保存项目的不同版本,而版本控制系统则简化了这些工作,版本控制系统还有其它功能,如版本间比较、多人系统合作开发等等。

        默认设置,点击“完成”,Qt Creator生成HelloWorld项目,界面如下:

88aebe78ce844de499f3a30340cbe609.png

         我们先不管代码内容,先点击左下角的编译配置选项,选择Release,然后点击绿色的三角形”运行“按钮或按快捷键Ctrl+R。

81f1be4aebbb4ed5b3d8803d5aa2f554.png

39a8977f509c4d41b3c9a3cb8769c57a.png

         等待编译并运行,如果Qt安装没问题,新建项目顺利的话,稍等片刻你的电脑会出现主界面窗体,界面如下:

0317f771281c4975a7910c3ba09d09ef.png

         到此,恭喜你,新建项目成功。虽然这个窗体里空空如也,但这也是你迈向Qt的第一步!

3. 项目文件目录分析

        如下图所示,这是我们新建项目的文件目录,从该目录可以看到,这个项目包含了一个HelloWorld.pro文件、一个头文件mainwindow.h、两个源文件main.cpp、mainwindow.cpp、一个界面文件mainwindow.ui。我们再理一理,就是一个HelloWorld.pro文件,一个main.cpp文件,剩下的就是新建项目过程中Qt默认给你新建的主界面的三个文件。

        如果你初次接触Qt,那么你对.pro和.ui文件并不熟悉,不过不影响,这在之后的使用中你会越来越熟悉的。

d7652dff0d5546f2a08a9b035b1de95f.png

         这里我打开HelloWorld.pro文件给大家看看都有写什么内容,这些语句是qmake的语法,用来指定如何构建Qt项目。这里我们只大概的看看内容,并不深究.pro文件的语法。

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

CONFIG += c++11

# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

SOURCES += \
    main.cpp \
    mainwindow.cpp

HEADERS += \
    mainwindow.h

FORMS += \
    mainwindow.ui

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

        我们一行行看看.pro文件里的语句。

        QT += core gui表示在该项目中加入了Qt的core和gui模块,core是Qt的内核系统,gui是Qt的界面系统;

        greaterThan(QT_MAJOR_VERSION, 4): QT += widgets表示当前安装的Qt版本如果高于Qt4,则加入widgets控件模块;

        DEFINES += QT_DEPRECATED_WARNINGS表示如果项目中使用了Qt已经废弃的特性或语句,则编译器会给出报警信息;

        DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000表示如果项目中使用了废弃的APIs,则编译器禁止编译代码。这句前面有个#,表示注释掉了这句(qmake语法中注释使用#),也就是使用了废弃的APIs还是可以编译的。

SOURCES += \
    main.cpp \
    mainwindow.cpp

HEADERS += \
    mainwindow.h

FORMS += \
    mainwindow.ui

        上面几行表示项目中加入的源文件、头文件和ui文件。

qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

        最后这几句表示的是默认的部署规则,和操作系统有关,我们不去深究。

        接下来我们再看看main.cpp里的内容:

#include "mainwindow.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    return a.exec();
}

        在main.cpp里,最前面两行是头文件包含,包含了mainwindow.h和QApplication两个头文件,分别是主窗口的文件和Qt内部的核心应用文件。接着是C++的入口函数main(),里面先实例了一个QApplication变量a,又实例了MainWindow窗口的一个变量w,接着执行w.show()函数,将MainWindow窗口显示在屏幕上,最后main()函数返回a.exec(),开始进入Qt程序运行,将程序的控制权交给了Qt内核。

4. 总结

        这篇讲了Qt如何新建项目并运行,分析了新建项目的文件组成,解释了每个文件的作用,最后分析了.pro文件和mian.cpp文件的语句。

        下一篇将进入Qt应用的创作之旅。

  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值