打开Qt Creator,点击New;
或者在菜单栏点击 文件,新建文件或项目
选择Qt Widgets Application(这个就是QT桌面应用程序它是包含一个QT设计的主窗体的),点击Choose
(而第二个Qt Console Application是控制台应用程序)
这里是项目的名字和项目存放的路径
切记切记!目录里不要有中文,如图所示的路径名字是错误的!
(如果路径里面有中文,写好以后的QT程序是运行不了的)
这里是选择用什么方式来构建QT工程。
qmake是为QT量身打造的,同样也是QT默认的
这里选择默认的就行了
这一步是 类信息,在创建QT项目的时候会让你创建一个类,这个类就是主窗口的类。
需要重点关注Base Class基类,这个基类有三种选择:
- QWidget:最简单的窗口,创建出来窗口上面什么都没有
- QMainWindow:在QWidget的基础上多了菜单类状态类工具类这类的东西
- QDialog:在QWidget的基础上多了多了对话框
构建套件:选择用什么版本去构建你的项目,选择MinGW这个
项目管理:如果是团队项目的话这里就需要设置。
main.cpp
#include <QApplication>
包含一个应用程序类的头文件。
QApplication管理GUI程序的控制流和主要设置。
QApplication包含窗口系统和其他来源处理过和发送过的主事件循环。它也处理应用程序的初始化和收尾工作,并提供对话管理。QApplication可以对系统和应用的大部分设置项进行设置。
对于用Qt写的任何一个GUI应用,不管这个应用有没有窗口或多少个窗口,有且只有一个QApplication对象。
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
}
main程序入口,程序从这里开始执行。argc是命令行变量的数量,argv命令行变量的数组。
对程序的各种操作比如鼠标点了键盘输入了,就会用argc和argv来接收,并且会传入到QApplication a里面
a是应用程序对象,在QT中,应用程序对象有且仅有一个。
Widget w;
w.show();
实例化一个窗口对象,默认不会显示,必须要调用show方法来显示窗口,所以w.show()表示显示窗口
return a.exec();
让应用程序对象进入消息循环,可以理解为一个死循环,让代码停到这里,后面写的代码就不会执行了
demo.pro项目文件
QT的项目文件后缀是.pro
QT += core gui
当前QT项目包含的模块:core,gui (默认包含)
Qt Core 模块是 Qt 类库的核心,所有其他模块都依赖于此模块,如果使用 qmake 构建项目, 则 Qt Core 模块是自动被加入项目的。
Qt GUI 模块提供了用于开发 GUI 应用程序的必要的类,使用 qmake 构建应用程序时,Qt GUI 模块是自动被加入项目的。
QT5的基本模块大致分为:
模块 | 描述 |
---|---|
Core | 其他模块都用到的核心非图形类 |
GUI | 设计 GUI 界面的基础类,包括 OpenGL |
Multimedia | 音频、视频、摄像头和广播功能的类 |
Multimedia Widgets | 实现多媒体功能的界面组件类 |
Network | 使网络编程更简单和轻便的类 |
QML | 用于 QML 和 JavaScript 语言的类 |
Quick | 用于构建具有定制用户界面的动态应用程序的声明框架 |
Quick Controls | 创建桌面样式用户界面,基于 Qt Quick 的用户界面控件 |
Quick Dialogs | 用于 Qt Quick 的系统对话框类型 |
Quick Layouts | 用于 Qt Quick 2 界面元素的布局项 |
SQL | 使用 SQL 用于数据库操作的类 |
Test | 用于应用程序和库进行单元测试的类 |
Widgets | 用于构建 GUI 界面的 C++ 图形组件类 |
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
大于4版本以上,包含widgets模块
SOURCES += \
main.cpp \
widget.cpp
源文件,如果你项目里面新添加一个cpp,他会自动在这里把cpp文件加入进去
HEADERS += \
widget.h
头文件,和源文件一样,项目里所有的头文件都在这里