什么是Qt?
Qt是一个跨平台的C++图形用户界面应用程序框架。它为应用程序开发者提供建立艺术级图形界面所需的所有功能。它是完全面向对象的,很容易拓展,并且允许真正的组建编程。
#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();
//a.exec()进入消息循环机制
return a.exec();
}
#include<mywidget.h>
//快捷键
//运行 ctrl + R
//编译 ctrl + B
//查找 ctrl + F
//帮助文档 F1
//字体缩放 ctrl + 鼠标滚轮
//自动对齐 ctrl + i
//整行移动 ctrl + shift + 上下键
//同名.h和.cpp的切换 F4
MyWidget::MyWidget(QWidget *parent):QWidget(parent)//初始化列表
{
//按钮
QPushButton *btn = new QPushButton();
btn->show();//show用顶层方法弹出,如果想要在MyWidget窗口中显示,就需要依赖MyWidget窗口
//设置父亲
btn->setParent(this);
//设置文字
btn->setText("按钮1“);
//创建按钮的第二种方式,窗口会按照btn2大小进行显示
QPushButton *btn2 = new QPushButton("第二个按钮",this);
//重置窗口大小
this->resize(600,400);
//移动第二个按钮
btn2->move(100,100);
//按钮可以重置大小resize
btn2->resize(50,50);
//重置窗口标题
setWindowTitle("Qt的第一个窗口");
//设置固定的窗口大小
setFixedSize(600,400);
//Qt一定程度下简化了内存回收机制
//创建自己的按钮
MyButton *myBtn = new MyButton;
myBtn->setText("我的按钮");
myBtn->move(200,200);
myBtn->setParent(this);
//点击myBtn关闭窗口
//参数1:信号的发送者 参数2:发送的信号 参数3:信号的接收者 参数4:处理的槽函数
//connect(myBtn,&MyButton::clicked,this,&MyWidget::close);
connect(myBtn,&QPushButton::clicked,this,&QWidget::close);
}
MyWidget::~MyWidget(){
}
所有new出来的对象不用管释放,因为children表中的对象会在窗口关闭后进行自动释放。
Qt中的坐标系:
x轴正方向向右,y轴正方向向下。