使用 QStackedLayout 类实现窗口页面切换
介绍
QStackedLayout 类是 Qt 框架中的一个布局管理器类,用于实现窗口中多个页面的切换。在 QStackedLayout 中,可以添加多个控件(例如 QWidget、QFrame、QLabel 等),并且只会显示其中的一个。当需要切换页面时,可以使用 setCurrentWidget() 或者 setCurrentIndex() 函数来切换显示的控件。
使用 QStackedLayout 类实现窗口页面切换的示例代码如下:
#include
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建窗口和多个页面
QWidget window;
QLabel page1("这是第一页");
QLabel page2("这是第二页");
QLabel page3("这是第三页");
// 创建 QStackedLayout 布局管理器
QStackedLayout *layout = new QStackedLayout;
// 将页面添加到布局管理器中
layout->addWidget(&page1);
layout->addWidget(&page2);
layout->addWidget(&page3);
// 将布局管理器设置为窗口的主布局
window.setLayout(layout);
// 切换到第二页
layout->setCurrentWidget(&page2);
// 显示窗口
windo