Qt中Widget Aplication项目的文件内容介绍

项目创建完成之后会出现如下界面:

之后对项目中的各个文件内容进行介绍

1 001.pro文件。一般项目中的.pro 文件是项目的项目文件

QT       += core gui #Qt包含的模块

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets  #大于4版本 包含widget模块

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 \
    mybutton.cpp \
    mywidget.cpp

HEADERS += \
    mybutton.h \
    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

2、对项目中的main.cpp文件介绍,这是整个项目的开始位置

#include "mywidget.h"

#include <QApplication>//包含头文件 应用程序
//程序的入口 argc为命令行的数量  argv是命令行变量的数组
int main(int argc, char *argv[])
{
    //应用程序对象 a,Qt中有且仅有一个应用程序对象
    QApplication a(argc, argv);
    //创建MyWidget对象 w, MyWidget基类是 QWidget
    MyWidget w;
    //窗口一般默认是不会弹出的,如果想要弹出就需要调用 show方法
    w.show();
    return a.exec();//a.exec()是进行消息循环机制,相当于pause

}

3、介绍项目中创建的时候,创建的一个继承于QWidget的mainWindow类

1).h文件

#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget>

class MyWidget : public QWidget //MyWidget继承QWidget类
{
    Q_OBJECT //Q_OBJECT是Qt中的一个宏,写了这个宏就说明支持Qt中的信号和槽机制

public:
    MyWidget(QWidget *parent = nullptr);//构造函数
    ~MyWidget();//析构函数
};
#endif // MYWIDGET_H

2).cpp文件

#include "mywidget.h"

#include "mybutton.h"

MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)//初始化列表
{
        

}

MyWidget::~MyWidget()
{
}

注意:其他后面接收的类除了继承的父类不同,其他的结构和这个类一样。

介绍完基本的一些文件类容之后,下面以在界面创建一个按钮控件镜像进一步了解。此内容继以上文件继续书写。在mianWindow类中增加按钮函数。

#include "mywidget.h"
#include <QPushButton>
#include "mybutton.h"
MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)//初始化列表
{
        //创建一个按钮
//1)第一种方式
        //按钮   使用的类为QPushButton
    QPushButton *pushButton = new QPushButton;//创建一个按钮控件
    pushButton->show();//show是用顶层方式的弹出,如果想在MyWidget窗口中显示,就需要依赖MyWidget窗口
        //设置父亲
    pushButton->setParent(this);//设置pushButton按钮的父窗口为当前widget
    pushButton->setText(tr("赤水"));//设置按钮名称
//第二种方式
    QPushButton *pushButton1 = new  QPushButton(tr("南北将军"),this);//在定义的时候指定控件的父窗口和控件名称
    //重置窗口大小
    resize(600,400);
    //移动第二个按钮
    pushButton1->resize(50,50);
    //重置窗口标题
    setWindowTitle(tr("Qt第一个窗口"));
    //重置窗口大小
    setFixedSize(600,400);

    //一定程度下 简化了内存回收机制
    //创建自己的按钮
    MyButton *myBtn = new MyButton;
    myBtn->setText(tr("我的按钮"));
    myBtn->move(200,200);
    myBtn->setParent(this);

    //Qt 坐标系
    //x为右侧正向   y以下侧为正向

    //点击myBtn关闭窗口
    //使用connect函数  参数1 信号发送者 参数2 发送的信号(信号地址) 参数3 信号的接收者 参数4 处理的槽函数(函数地址)
    connect(myBtn,&MyButton::clicked,this,&QWidget::close);


}

MyWidget::~MyWidget()
{
}

最后在介绍几个Qt中的一些快捷键

功能快捷键
运行ctrl+R
编译ctrl+B
查找ctrl+F
帮助文档F1
字体缩放ctrl+鼠标滚轮
自动对齐ctrl+i
整行移动

ctrl+shift+t 或者 i 

同名之间的.h和.cpp文件之间切换F4
注释快捷键ctrl+/

 

  
 
 
 
  
 
  
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页