QT笔记_01(初入Qt)

QT包含的模块

QT       += core gui

大于4版本以上 包含widget模块

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
CONFIG += c++17

目标:生成的.exe程序的名称

TARGET = 01_FirstProject

模板:应用程序模板 application

TEMPLATE = app

源文件

SOURCES += \
    main.cpp \
    mypushbutton.cpp \
    mywidget.cpp

头文件

HEADERS += \
    mypushbutton.h \
    mywidget.h

**

头文件

**

mywidget.h

#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget> //包含头文件 QWidget 窗口类

class myWidget : public QWidget
{
    Q_OBJECT //Q_OBJECT宏,允许类中使用信号和槽的机制

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

mypushbutton.h

#ifndef MYPUSHBUTTON_H
#define MYPUSHBUTTON_H

#include <QPushButton>

class MyPushButton : public QPushButton
{
    Q_OBJECT
public:
    explicit MyPushButton(QPushButton *parent = nullptr);
    //MyPushButton();
    ~MyPushButton();


signals:

};

#endif // MYPUSHBUTTON_H

源文件

main.cpp

#include "widget.h"

#include <QApplication>//包含一个应用程序类的头文件
//main程序入口  argc命令行变量的数量 argv命令行变量的数组
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);//a应用程序对象,在qt中,应用程序对象有且仅有一个
    mtWidget w;//窗口对象 myWidget父类 -> QWidget
    w.show();//窗口对象默认不会显示,必须要调用show方法显示窗口
    return a.exec();//让程序对象进入消息循环
}

命名规范

类名:首字母大写,单词和单词之间首字母大写
函数名 :变量名称 首字母小写,单词和单词之间首字母大写

快捷键

注释 ctr+/
运行 ctr+r
编译 ctr+b
字体缩放 ctr+
滚轮 查找 ctr +f
整行移动 ctr+shift+↑ 或者 ↓
帮助文档 F1
自动对齐 ctr+i
同名之间 .h和 .cpp切换 F4

myWidget.cpp

#include "mywidget.h"
#include <QPushButton> //按钮控件的头文件
#include "mypushbutton.h"//在myWiget调用mypushbutton,先声明头文件
#include <QDebug>
myWidget::myWidget(QWidget *parent): QWidget(parent){

//创建一个按钮

QPushButton * btn = new QPushButton;

//show以顶层方式弹出窗口控件

btn->show();

// 让btn对象 依赖在myWidget窗口中

 btn->setParent(this);//设置到对象树中

//显示文本

btn->setText("first button");

//创建第二个按钮

QPushButton * btn2 = new QPushButton("second button",this);

//移动btn2按钮

btn2->move(100,0);

//按钮指定大小

btn2->resize(100,100);

//重置窗口大小

resize(600,400);

//设置固定的窗口大小

setFixedSize(600,400);

//设置窗口标题

setWindowTitle("one window");

//创建一个自己的按钮对象

   MyPushButton * myBtn = new MyPushButton;
    myBtn->setParent(this);
    myBtn->setText("my");

    myBtn->move(200,0);

//需求 点击我的按钮 关闭窗口

//参数1:信号的发送者 参数2:发送的信号(函数的地址) 参数3:信号的接受者 参数4:处理的槽函数
 connect( myBtn, &MyPushButton::clicked, this, &myWidget::close);

}

myWidget::~myWidget()
{
    qDebug() << "myWidget析构调用";
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值