2011-08-20 43 views
1

我需要制作小的wxWidgets(wxPython)框架,其中只包含工具栏和菜单栏,并且刚好足以容纳它们。当我在下面运行代码时,它会创建一个框架,但它太大了。我应该怎么做才能使框架紧紧围绕它包含的组件?创建问题的框架wxWidgets计算不正确的帧大小

代码:

类TOOLFRAME(wx.Frame):

def __init__(self, editor): 
    wx.Frame.__init__(self, None, title = "Tools") 
    self.editor = editor 

    self.menu = FileMenu(self, editor) 

    self.menuBar = wx.MenuBar() 
    self.menuBar.Append(self.menu, "File") 
    self.SetMenuBar(self.menuBar) 

    self.toolBar = Tools(self, editor) 
    self.SetToolBar(self.toolBar) 

    # frame size has to be constant 
    self.Layout() 
    size = self.GetSize() 
    self.SetMaxSize(size) 
    self.SetMinSize(size) 

    # connect exit callback 
    self.Bind(wx.EVT_CLOSE, self.onClose) 


def addTool(self, tool): 
    self.toolBar.addTool(tool) 


def onClose(self, event): 
    if self.editor: 
     self.editor.postEvent(events.ExitRequestEvent()) 

def quit(self): 
    self.Destroy() 

回答

0

尝试删除self.SetMaxSize(size),说发生了什么事。

+0

我试过了,但问题依然存在。 – KCH