QT文件介绍

2023-12-15 04:46:27

时间记录:2023/12/14
1.(.pro文件)项目管理文件

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

CONFIG += c++11

DEFINES += QT_DEPRECATED_WARNINGS

SOURCES += \
    main.cpp \
    mywidget.cpp

HEADERS += \
    mywidget.h

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
配置项含义
QT指定项目中用到的所有模块,core模块包含了QT GUI界面开发的核心功能,其他所有模块均依赖于此模块,gui模块提供了用于开发GUI应用程序的一些必要类,sql模块包含了数据库相关的类,widgets包含了构建界面的控件类,multimedia包含了音频、视频的类,network包含了网络相关的类,bluetooth包含了蓝牙操作相关的类
greaterThan(QT_MAJOR_VERSION,4):QT+=widgets判断QT的版本如果大于4的话添加模块
TARGET指定生成的可执行程序的名字
TEMPLATE指定如何运行当前程序,默认值为app,表示当前程序是应用程序,可直接编译运行,常用值还有lib,表示将当前程序编译成库文件
DEFINES在程序中定义一个宏,如同c文件中的#define xxx
SOURCES指定项目中的所有cpp源文件
HEADERS指定项目中的所有h头文件
FORMS指定项目的所有ui文件
INCLUDEPATH指定引入外部资源的头文件路径
LIBS指定引入外部资源的指定库文件
CONFIG经常用的值,release:以发布模式编译程序,debug:以调试模式编译程序,warn_on:编译器输出尽可能多的警告,c++11:启用c++11标准支持

2.(main.cpp)主程序文件

#include "mywidget.h"

#include <QApplication>//QApplication类的头文件

//argc->argument_count,argv->argument_value
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);//创建QApplication对象,每个应用程序都必须有且仅有一个此对象
    MyWidget w;//创建主窗口对象
    w.show();//调用show方法,使图形对象显示在屏幕
    return a.exec();//阻塞,进入消息循环,等待程序结束pause
}

3.(.h头文件)

#ifndef MYWIDGET_H//宏定义,防止重复包含
#define MYWIDGET_H

#include <QWidget>

class MyWidget : public QWidget//此类继承于QWidget类
{
    Q_OBJECT//所有使用到信号的类都需要添加此宏

public://公共属性和方法定义/实现区
    MyWidget(QWidget *parent = nullptr);//构造方法定义
    ~MyWidget();//析构函数定义
};
#endif // MYWIDGET_H

4.(.cpp源文件)

#include "mywidget.h"
MyWidget::MyWidget(QWidget *parent)
     : QWidget(parent)//构造函数实现,用来创建对象
{
}

//析构函数最后执行的函数,在这里释放空间
MyWidget::~MyWidget()
{
}

文章来源:https://blog.csdn.net/m0_49156395/article/details/135005778
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。