1,按钮常用的API
1.1 创建QPushButton* mybutton = new QPushButton;
1.2 设置父亲 setParent(this);
1.3 设置文本 setText("创建的第一个按钮");
1.4 move(宽,高);
1.5 重新指定窗口标题 setWindowTitle
1.6 设置固定窗口大小 setFixSize
2,对象树
2.1 如果创建的对象在堆区时,如果指定的父是Object派生下来的类或者是Object的子类的派生下来的类时,可以不用管理对象的释放操作,会将对象加入到对象树中
2.2 一定程度上简化了内存回收机制
mypushbutton.cpp:
#include "mypushbutton.h"
#include <QDebug>
MyPushButton::MyPushButton(QWidget *parent) : QPushButton(parent)
{
qDebug() << "MyPushButton的构造函数的调用" << endl;
}
MyPushButton::~MyPushButton()
{
qDebug() << "MyPushButton的析构函数的调用" << endl;
}
mywidget.cpp:
#include "mywidget.h"
#include <QPushButton.h>//按钮控件的头文件
#include "mypushbutton.h"
#include <QDebug>
myWidget::myWidget(QWidget *parent)
: QWidget(parent)
{
//创建一个按钮
QPushButton * button = new QPushButton;
//button->show(); //以顶层的方式显示
button -> setParent(this);//this 指向的时被调用对象所属的函数 -> myWidget SerParent()用来选择继承的父类
button -> setText("第一个按钮");
//创建第二个按钮,以按钮控件的大小来创立窗口
QPushButton* button2 = new QPushButton("第二个按钮",this);
//移动按钮控件的位置
button2 -> move(100,100);
//创建一个自己的按钮对象
MyPushButton* mybutton = new MyPushButton;
mybutton -> setParent(this);//设置到对象树中
mybutton -> setText("自己创建的按钮");
mybutton ->move(200,0);
//设置窗口的大小
resize(600,400);
//固定窗口大小
setFixedSize(600,400);
//设置窗口名称
setWindowTitle("第一个窗口");
}
myWidget::~myWidget()
{
qDebug() << "mywidget的析构函数的调用"<< endl;
}