wxPython 多文档界面
典型的GUI应用程序可能有多个窗口。选项卡和堆叠小部件允许一次激活一个窗口。然而,很多时候这种方法可能不是很有用,因为其他窗口的视图被隐藏起来。
显示多个窗口的一种方法是将它们创建为独立的窗口。这被称为SDI(单文档界面)。这需要更多的内存资源,因为每个窗口可能有自己的菜单系统、工具栏等。
wxPython中的MDI框架提供了一个wx.MDIParentFrame类。它的对象充当多个子窗口的容器,每个子窗口都是wx.MDIChildFrame类的对象。
子窗口驻留在父框架的MDIClientWindow区域。一旦添加了子框架,父框架的菜单栏就会显示一个窗口菜单,其中包含以级联或平铺方式排列子窗口的按钮。
示例
以下示例说明了MDIParentFrame作为顶级窗口的用法。名为NewWindow的菜单按钮在客户区添加一个子窗口。可以添加多个窗口,然后以级联或平铺的方式进行排列。
完整代码如下所示−
上述代码生成以下输出 –