在wx.Panel中完全内部控制调整大小

时间:2010-10-30 10:31:10

标签: python wxpython

嗨,所有朋友:) 我在wx.Panel内部有一个控件有问题。 使用我的代码,wx.Panel中的wx.GenericDirCtrl不适合Panel中的所有方向(或者只适用于我使用wx.BoxSizer的方向)。 我在wx.Frame中使用MyPanel的istance。 我怎么解决呢?感谢

代码是:

class MyPanel(wx.Panel):
  def __init__(self, parent):
     wx.Panel.__init__(self, parent, wx.ID_ANY)

     resizeBox = wx.BoxSizer(wx.VERTICAL)

     self.dir1 = wx.GenericDirCtrl(self, wx.ID_ANY)
     resizeBox.Add(self.dir1, wx.EXPAND | wx.ALL)

     self.SetSizerAndFit(resizeBox)

和我在wx.Framec中实例化Panel的代码是:

# controls
self.splitterMain = wx.SplitterWindow(self, wx.ID_ANY) # create a vertical splitter
self.panel1 = MyPanel(self.splitterMain)
self.panel1.SetBackgroundColour(wx.BLACK)
self.panel2 = wx.Panel(self.splitterMain, wx.ID_ANY)
self.panel2.SetBackgroundColour(wx.WHITE)
self.splitterMain.SplitVertically(self.panel1, self.panel2)

1 个答案:

答案 0 :(得分:1)

您使用的Add方法错误。它的签名是

Add(self, item, proportion=0, flag=0, border=0, userData=None)

您已将“flag”参数作为比例参数传递。