在QMdiArea中显示多个QWidget窗口,可以使用QMdiSubWindow。每个QMdiSubWindow都可以包含一个QWidget窗口。
要通过title切换最前面的QMdiSubWindow,可以使用QMdiArea的activateNextSubWindow()和activatePreviousSubWindow()方法。这些方法将激活下一个或上一个QMdiSubWindow,并使其成为焦点。
以下是示例代码:
// 创建两个QWidget窗口
QWidget *widget1 = new QWidget();
QWidget *widget2 = new QWidget();
// 将QWidget窗口添加到QMdiSubWindow中
QMdiSubWindow *subWindow1 = mdiArea->addSubWindow(widget1);
QMdiSubWindow *subWindow2 = mdiArea->addSubWindow(widget2);
// 设置QMdiSubWindow的标题
subWindow1->setWindowTitle("Window 1");
subWindow2->setWindowTitle("Window 2");
// 激活下一个QMdiSubWindow(即切换到Window 2)
mdiArea->activateNextSubWindow();
// 激活上一个QMdiSubWindow(即切换回Window 1)
mdiArea->activatePreviousSubWindow();
注意:如果QMdiArea中没有多个QMdiSubWindow,则这些方法不会产生任何效果。要确保至少有两个QMdiSubWindow才能使用这些方法。