C++ 不确定如何使用QStackedWidget

C++ 不确定如何使用QStackedWidget,c++,qt,C++,Qt,我想通过按下按钮从不同的QWidget切换,但不确定如何切换,当我运行此操作时,我单击按钮,但什么也没有发生,我的代码如下: #include "mainwindow.h" #include "ui_mainwindow.h" #include <qstackedwidget.h> MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { u

我想通过按下按钮从不同的QWidget切换,但不确定如何切换,当我运行此操作时,我单击按钮,但什么也没有发生,我的代码如下:

#include "mainwindow.h"
#include "ui_mainwindow.h"

#include <qstackedwidget.h>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_level_2Button_pressed()
{
    QWidget *page_1 = new QWidget;
    QWidget *page_2 = new QWidget;
    QStackedWidget *stackedWidget = new QStackedWidget;
    stackedWidget->addWidget(page_1);
    stackedWidget->addWidget(page_2);
    stackedWidget->setCurrentWidget(page_2);
}
#包括“mainwindow.h”
#包括“ui_main window.h”
#包括
主窗口::主窗口(QWidget*父窗口):
QMainWindow(父级),
用户界面(新用户界面::主窗口)
{
用户界面->设置用户界面(此);
}
MainWindow::~MainWindow()
{
删除用户界面;
}
void main window::在_level_2Button_pressed()上
{
QWidget*第1页=新的QWidget;
QWidget*第2页=新的QWidget;
QStackedWidget*stackedWidget=新的QStackedWidget;
stackedWidget->addWidget(第1页);
stackedWidget->addWidget(第2页);
stackedWidget->setCurrentWidget(第2页);
}

任何帮助都会被理解,我是新的C++,我很难理解如何使用QStaskDeWIDGET,谢谢。

< p>查看你的代码,你没有把小部件添加到主窗口:我会在代码中添加<代码> SETCCELLIDWIDGET(StAKEDWIDGET)。您也可以通过布局来实现这一点:只需创建一个布局(例如:
QVBoxLayout
),将您的小部件添加到布局中(
layout\u name->addWidget(stackedWidget)
),然后使用
setLayout(layout\u name)
。如果您想使用布局,请不要忘记包含
QLayout

如果您想了解有关
QStackedWidget
的更多信息,可以使用解释得很好的方法。

您永远不会调用
stackedWidget
。另外,您应该
#包括
而不是
QStackedWidget.h