编写第一个QT项目
QT官网
安装完QT后的界面
创建第一个项目
这里我们选择第一个就好
下一步
下一步
选择CMake,QMake是QT的CMAKE(现在官方自己都不推荐了)
下一步
选择QWidget我们先创建一个最简单的窗口程序
- QMainWindow:主窗口类,包括菜单栏,工具栏,状态栏
- QWidget:创建一个空白的窗口,是所有界面组件的基类
- QDialog:基于对话框的类
下一步
翻译文件(这里不需要)
下一步
下一步
完成
构建方式
如果没有在这里添加
我们在空白窗口上添加一个控件
双击widget.ui
GUI界面
这里可以看到层级继承关系
添加Label
修改内容填写HelloWorld
运行或者Ctrl+R
代码解释
// main.cpp
#include "widget.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv); // 定义并创建应用程序Widget w; // 定义并创建窗口w.show(); // 显示窗口return a.exec(); // 应用程序运行,开始消息循环和事件处理
}
// widget.h
#ifndef WIDGET_H // 防止重复声名
#define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE
namespace Ui { // 命名空间
class Widget; // ui_wedget.h文件里定义的类,外部声名
}
QT_END_NAMESPACEclass Widget : public QWidget
{Q_OBJECT // 宏,使用Qt信号与槽机制必须添加public:Widget(QWidget *parent = nullptr); // 构造函数~Widget(); // 析构函数private:Ui::Widget *ui; // Ui::Widget类型的指针,这里仅仅只是声名了这个地址用来存放指向的GUI界面
};
#endif // WIDGET_H
// widget.cpp
#include "widget.h"
#include "./ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent) , ui(new Ui::Widget) // 执行父类构造函数并通过传递的参数初始化成员属性
{ui->setupUi(this); // 实现了组件的各种设置,信号与槽的关联
}Widget::~Widget()
{delete ui; // 释放
}
至此我们的第一个GUI界面编写完成