1.创建一个工程
1.1选择项目路径以及项目名称
1.2 构建套件。根据需要对于不同版本的选择。
1.3 默认创建有窗口类,myWidget,基类有三种选择:Qwidge(一个空白界面,父类)、QMainWindow(带有菜单栏,状态的界面,子类)、QDialog(带有对话框界面)。此处选择QWidget基类
1.4 创建好的工程包含.pro的工程文件,mywidget.h,main.cpp,mywidget.cpp
2.main函数解析
#include "mywidget.h"
#include <QApplication>//包含一个应用程序类的头文件//main程序入口 argc命令行变量的数量 argv命令行变量的数组
int main(int argc, char *argv[])
{//a应用程序对象,在QT中,应用程序只有一个QApplication a(argc, argv);//窗口对象 父亲->QwidgetmyWidget w;w.show();//让程序对象进入消息循环,死循环,窗口一直处于显示状态,至到点叉return a.exec();
}
3.工程文件解析
#-------------------------------------------------
#
# Project created by QtCreator 2021-01-02T16:38:53
#
#-------------------------------------------------QT += core gui //qt包含的模块greaterThan(QT_MAJOR_VERSION, 4): QT += widgets //大于4版本以上 包含widget模块TARGET = fistProject //生成的.exe文件名称
TEMPLATE = app //模板 应用程序模板# The following define makes your compiler emit warnings if you use
# any feature of Qt which as been marked as 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 you use 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.0SOURCES += \main.cpp \ //源文件mywidget.cppHEADERS += \mywidget.h //头文件
4.头文件解析
#ifndef MYWIDGET_H
#define MYWIDGET_H#include <QWidget> class myWidget : public QWidget
{Q_OBJECT //宏,允许类总使用信号和槽的机制public:myWidget(QWidget *parent = 0); //构造函数;带默认值~myWidget(); //析构
};#endif // MYWIDGET_H
5. 添加按钮控件
5.1 创建两个按钮控件
#include "mywidget.h"
#include <QPushButton>myWidget::myWidget(QWidget *parent): QWidget(parent)
{//创建第一个按钮QPushButton * bt = new QPushButton;//bt->show(); //show以顶层方式弹出窗口空间bt->setParent(this); //让bt对象,依赖在myWidget窗口中//显示文本bt->setText("close");//创建第二个按钮,按照控件的大小创建窗口QPushButton *bt_two = new QPushButton("open",this);//移动第二个按钮bt_two->move(100,100);//重置窗口大小resize(600,400);//设置固定窗口大学校setFixedSize(200,200);//设置窗口标题setWindowTitle("窗口");}myWidget::~myWidget()
{}
5.2 按钮控件常用API
(1)创建对象:QPushButton *bt = new QpushButton
(2) 设置父亲:setParent(this) //设置依赖
(3) 设置文本:setText("文本")
(4)设置位置:move(宽,高)
(5)设置窗口大小:resize(宽,高)
(6)设置窗口标题:setWindowTitle("str")
(7) 设置窗口固定大小:setFixdSize(宽,高)