加载窗口
本节介绍一种在当前窗口中嵌入另一种窗口的方法。
(1)首先使用Qt Designer 新建一个普通窗口,命名为“ChildrenForm2,并在ChildrenForm2中放置QTextEdit控件,如图所示。

然后复制MainWindowBase.ui(上节内容)并重命名为MainForm2.ui,使用 Qt Designer打开,在主窗口的空白中央添加一个栅格布局管理器并命名为“MaingridLayout”,等会需要将ChildrenForm2放进去,如图所示。

(2)使用pyuic工具将.ui文件转换为.py文件。
(3)调用主窗口类。为了实现调用代码与界面的分离,需要新建一个文件CallMainWin02.py,直接继承界面类和主窗口类。同理,子窗口类ChildrenForm2的声明也放在了调用类 CallMainWin02.py 文件中。其完整代码如下:
运行代码,点击添加窗体,显示效果如下:

在这个例子中,当单击 MainWindow工具栏中的“添加窗体”按钮时,在主窗口 MainForm中会动态加载子窗口 ChildrenForm2。
单击工具栏上的按钮时,触发信号绑定自定义的槽函数childShow()。