在QT开发过程中,如果不给创建的对象指定父对象,对象和对象(窗口和窗口)没有关系,相互独立,这不符合我们的设计要求;
假设有A和B两个对象,A指定B为它的父对象,A放在B的上面
指定父对象,有2种方式:
1)setParent
2)通过构造函数传参
指定父对象,只需要父对象显示,上面的子对象自动显示
代码和显示效果如下
#include <QApplication>
#include <QWidget>
#include <QPushButton>
int main(int argc, char **argv)
{
QApplication app(argc, argv);
QWidget w;
QPushButton A; //创建对象A
A.setText("对象A"); //设置对象A文本
A.setParent(&w); //设置对象A的父对象为QWidget基类创建的对象w
A.move(200,200); //设置对象A显示坐标
A.resize(400,300); //设置按钮宽度和高度
QPushButton B(&A); //创建对象B同时设置其父对象为A
B.setText("对象B"); //设置对象B的文本
w.show();
app.exec();
return 0;
}