
autoLayout.h文件
#ifndef AUTOLAYOUT_H#define AUTOLAYOUT_H#include <QMainWindow>#include "window1.h"#include "window2.h"#include "window3.h"namespace Ui {class AutoLayout;}class AutoLayout : public QMainWindow{Q_OBJECTpublic:explicit AutoLayout(QWidget *parent = 0);void ChooseWidgets();int firstIndex = NULL;~AutoLayout();private:Ui::AutoLayout *ui;window1 * W1;window2 * W2;window3 * W3;};#endif // AUTOLAYOUT_H
autoLayout.cpp文件
#include "autolayout.h"#include "ui_autolayout.h"#include <QToolBar>#include <QDebug>AutoLayout::AutoLayout(QWidget *parent) :QMainWindow(parent),ui(new Ui::AutoLayout){ui->setupUi(this);window1 *W1 = new window1(this);window2 *W2 = new window2(this);window3 *W3 = new window3(this);ui->stackedWidget->addWidget(W1);ui->stackedWidget->addWidget(W2);ui->stackedWidget->addWidget(W3);ui->stackedWidget->setCurrentWidget(W1);//获取当前页面的序号firstIndex = ui->stackedWidget->currentIndex();QAction* newItemToolBar = new QAction(tr("界面1"),this);QAction* newItemToolBar2 = new QAction(tr("界面2"),this);QAction* newItemToolBar3 = new QAction(tr("界面3"),this);ui->toolBar->addAction(newItemToolBar);ui->toolBar->addSeparator(); // 添加分割线ui->toolBar->addAction(newItemToolBar2);ui->toolBar->addSeparator();ui->toolBar->addAction(newItemToolBar3);connect(newItemToolBar, &QAction::triggered, this, [=](){ui->stackedWidget->setCurrentIndex(2);});connect(newItemToolBar2, &QAction::triggered, this, [=](){ui->stackedWidget->setCurrentIndex(3);});connect(newItemToolBar3, &QAction::triggered, this, [=](){ui->stackedWidget->setCurrentIndex(4);});}AutoLayout::~AutoLayout(){delete ui;}

window1文件
window2文件
window3文件
