2011-04-23 68 views
0

我使用auimanager在框架中显示框架,但它始终在一个新窗口中显示第二个框架,而不是在同一个窗口中,或任何其他建议如何做到这一点?wxwidgets aui管理器问题

+0

怎么样展示你有使人们可以对你的问题是什么想法的代码? – Mat 2011-04-23 09:18:10

回答

0

你的“外框”应该是aui.AuiMDIParentFrame,而“内框”应该是aui.AuiMDIChildFrame。在任何情况下:发布一些代码,然后更容易建议。

示例代码:

import wx 
import aui 

class MainFrame(aui.AuiMDIParentFrame): 
    def __init__(self, parent): 
     aui.AuiMDIParentFrame.__init__(self, parent, -1, title="AuiMDIParentFrame", 
             size=(640, 480), style=wx.DEFAULT_FRAME_STYLE) 
     child1 = InnerFrame(self, "child 1") 
     child1.Show() 
     child2 = InnerFrame(self, "child 2") 
     child2.Show() 


class InnerFrame(aui.AuiMDIChildFrame): 
    def __init__(self, parent, label): 
     aui.AuiMDIChildFrame.__init__(self, parent, -1, title=label) 

if __name__ == "__main__": 
    app = wx.PySimpleApp() 
    frame = MainFrame(None) 
    frame.CenterOnScreen() 
    frame.Show() 
    app.MainLoop() 
+0

我已经有一个框架类,我不能修改,现在我只是创建一个新的框架,我想显示它的旧框架,而不是一个新的窗口,这可能吗? – shd 2011-04-23 09:35:47

+0

您的新框架必须来自AuiMDIChildFrame。我将编辑我的帖子以显示示例。 – Ralph 2011-04-23 10:02:05

+0

请做,我一直试图解决这个超过12小时,在此先感谢 – shd 2011-04-23 10:04:06