2011-04-23 6 views
0

auimanager를 사용하여 프레임에 프레임을 표시하고 있지만 동일한 창에 새 창이나 두 번째 프레임을 표시하는 방법에 대한 제안이 계속 표시됩니까?wxwidgets 관리자 문제

+0

어떻게 사람들이 당신의 문제가 무엇인지에 대한 아이디어를 가질 수 있도록이 코드를 보여주는 어떻습니까? – Mat

답변

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

+0

새 프레임은 AuiMDIChildFrame에서 파생되어야합니다. 예를 보여주기 위해 내 게시물을 수정하겠습니다. – Ralph

+0

제발, 12 시간 이상이 문제를 해결하기 위해 노력 해왔다. 미리 감사드립니다. – shd