目录
1.Qt特性
2. 新建项目
3. 工作目录与构建目录
4. 工作目录
4.1 .pro 项目配置文件
4.2 dialog.h
4.3 dialog.cpp
4.4 main.cpp
5. 帮助文档
6. 调试信息
1.Qt特性
Qt经常被当作是一个基于c++语言的gui开发框架,但是这并不是qt的全部,除了开发界面外,Qt还包含了很多其他功能:多线程 数据库 图像处理 网络通信 文件io 音视频处理等
Qt被更广泛应用于纯软件开发和嵌入式开发,以下为案例:
涉及游戏、医疗、办公处理、银行ATM机交互自动售货机 、液晶汽车仪表等等
Qt的最大特点优势在于其跨平台特性:一次编程,到处编译
(一份图像界面代码都能在os win dns下跑)
除此之外,Qt还有以下优势
1)基于面向对象开发
2)丰富的API(应用程序接口)
3)大量的开发文档
4)易用的开发环境
5)开源(内卷大,可取代性大 ,os系统闭源)
2. 新建项目
1. 启动Qt Creator程序,点击
。
2. 在弹出的窗口中,按照下图所示进行操作。
3. 在弹出的窗口中设定项目名称和工作目录。
4. 直接下一步。
5. 在弹出的窗口中,按照下图所示进行操作。
6. 在项目管理界面,直接点击完成。可以看到相关文件的生成。
7. 点击绿色三角
,可以运行项目程序,运行后弹出一个空白的对话框窗口。
3. 工作目录与构建目录
第四节创建项目时设置的目录是工作目录,工作目录用于存放项目开发的源代码文件。在Qt Creator中点击
,可以看到有一个构建目录,构建目录用于存放项目编译生成的产物,例如exe可执行文件等。
如果有同学的Qt Creator无法正常运行Qt项目,又找不到原因,可以尝试把Shadow build(影子构建)选项取消,取消之后构建目录与工作目录合二为一,可以提升编译的稳定性,但是不建议这样做,因为所有的文件混在一起,项目分类不清晰。
4. 工作目录
工作目录在明面上包含下面的几类文件。
实际上工作目录中还有一个.user文件,交作业时请删除。
为了更方便的入门,重新建立一个项目,更改第5步为:
使用这种方式新建的项目具有以下区别:
- dialog.h与dialog.cpp结构更加简单
- 取消了.ui界面文件
4.1 .pro 项目配置文件
#-------------------------------------------------
#
# Project created by QtCreator 2023-05-04T09:36:04
#
#-------------------------------------------------
# 当前项目使用的Qt的模块
QT += core gui
# 当Qt的主版本号大于4时,引入widgets模块代替gui模块
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
# 生成的可执行文件名称
TARGET = HelloWorld23021
# 构建模式(勿动)
TEMPLATE = app
# 项目中包含的源文件
SOURCES += main.cpp\
dialog.cpp
# 项目中包含的头文件
HEADERS += dialog.h
# 项目中包含的界面文件
FORMS += dialog.ui
4.2 dialog.h
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
// 自定义的Dialog类继承了自带的QDialog类(所有对话框窗口的基类)
class Dialog : public QDialog
{
Q_OBJECT
public:
Dialog(QWidget *parent = 0); // 构造函数
~Dialog(); // 虚构函数
};
#endif // DIALOG_H
4.3 dialog.cpp
#include "dialog.h"
// 构造函数
Dialog::Dialog(QWidget *parent)
: QDialog(parent) // 透传
{
}
Dialog::~Dialog() // 析构函数
{
}
4.4 main.cpp
#include "dialog.h"
#include <QApplication>
// 主函数:程序的入口
int main(int argc, char *argv[])
{
// 创建了一个管理类对象:用于管理程序运行
QApplication a(argc, argv);
Dialog w; // 创建了一个对话框窗口
w.show(); // 展示窗口对象
return a.exec(); // 进入主事件循环
}
5. 帮助文档
学好Qt必须要学会使用帮助文档,有以下几种启动方式:
- 在Windows中直接找到Assistant程序
这种方式可以启动一个独立帮助文档的窗口,适合多屏用户使用。一个屏幕写代码,一个屏幕查文档。
- 在Qt Creator中,点击
这种方式可以调用一个内置的帮助文档。
- 在Qt Creator的代码中,光标定位到要查询的内容,双击键盘F1
这种方式可以直接定位到光标处的文档内容,需要注意的是不同品牌的电脑F1键点法不太一样,有些需要同时按Fn键。
6. 调试信息
在Qt开发中,调试信息只对开发者可见,不对用户可见,即这些信息的显示不在程序页面中,显示在后台。
使用的类为QDebug的类
为了能正常输出中文,需要先更改Qt Creator的编码为UTF-8。
设置完成后,建议重启Qt Creator并新建一个项目测试中文输出。
dialog.h
#ifndef DIALOG_H
#define DIALOG_H
#include <QDialog>
// 引入头文件
#include <QDebug>
class Dialog : public QDialog
{
Q_OBJECT
public:
Dialog(QWidget *parent = 0);
~Dialog();
};
#endif // DIALOG_H
dialog.cpp
#include "dialog.h"
Dialog::Dialog(QWidget *parent)
: QDialog(parent)
{
// Qt中函数的命名风格为 小驼峰命名法
// 第一个单词全小写,后面的每个单词首字母大写
// 与cout的区别:
// 1. 连续输出的内容自动使用空格间隔
// 2. 每句话结束后自动换行
qDebug() << "构造函数" << "调用了";
}
Dialog::~Dialog()
{
qDebug() << "析构函数调用了";
}
当运行项目时出现
表示之前运行的程序还没有关闭,关闭正在运行的程序,重新运行即可。