目录
一、创建ui界面的窗口
二、创建容器来存放堆叠布局
三、包含堆叠窗口的头文件
四、定义智能指针(系统自己管理内存分配和释放,防止忘记释放或者过载导致奔溃)
五、实例化智能指针
六、实例化布局
七、把智能指针对应的窗口地址存入堆叠布局里(get是要访问原始的地址)
八、通过按钮或者其他信号进行堆叠窗口的切换

我用的frame,我在ui界面摆放了一个frame的控件,之后的窗口就会在这个范围里进行显示。
#include "son_interface_1.h"
//std::unique_ptr<文件类名> 窗口名;
std::unique_ptr<son_interface_1> son_interface_1_;//智能指针,son_interface_1,std::unique_ptr是独占的智能指针,然后是一个对象,然后通过std::make_unique来创建
QStackedLayout *layout_;//设置堆栈布局
//窗口名= std::make_unique<文件类名>();
son_interface_1_ = std::make_unique<son_interface_1>();//std::unique_ptr是独占的智能指针,然后是一个对象,然后通过std::make_unique来创建
layout_ = new QStackedLayout(ui->frame_2);
layout_->addWidget(son_interface_1_.get());//添加到layout_
void interface_1::on_pushButton_clicked()
{
layout_->setCurrentWidget(son_interface_1_.get());//用于在一个堆叠小部件中切换当前显示的子小部件
}
顺序根据(七)添加顺序