❝这个例子展示了如何使用Qt的QMdiArea类实现多文档界面。❞
演示
多文档界面例子主要使用了QMdiArea类实现。下面是介绍QMdiArea的使用。
- 使用addSubWindow接口往QMdiArea添加子窗口。
QMdiArea mdiArea;
QMdiSubWindow *subWindow1 = new QMdiSubWindow;
subWindow1->setWidget(internalWidget1);
subWindow1->setAttribute(Qt::WA_DeleteOnClose);
mdiArea.addSubWindow(subWindow1);
QMdiSubWindow *subWindow2 =
mdiArea.addSubWindow(internalWidget2);
需要注意的是:创建自己的子窗口时,如果希望在MDI区域中关闭窗口时删除该窗口,则必须设置Qt::WA_DeleteOnClose
小部件属性。否则,该窗口将被隐藏,并且MDI区域将不会激活下一个子窗口。
- 移除子窗口使用
removeSubWindow
。 - 遍历所有子窗口
subWindowList
。
关于更多
- 在「QtCreator软件」可以找到:
- 或在以下「Qt安装目录」找到:
C:Qt{你的Qt版本}Examples{你的Qt版本}widgetsmainwindowsmd
- 「相关链接」
https://doc.qt.io/qt-5/qtwidgets-mainwindows-mdi-example.html