0
我正在为笔记本创建一个面板,而且我需要添加一个sizer。然而,当我运行代码:使用SetSizer时出现TypeError()
class HomePanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent=parent)
[...Widget Code...]
self.verticalsizer = wx.BoxSizer(wx.VERTICAL)
self.verticalsizer.AddStretchSpacer(prop=1)
self.verticalsizer.Add(self.text, flag=wx.ALIGN_CENTER | wx.BOTTOM, border=30)
self.verticalsizer.Add(self.text1, flag=wx.ALIGN_CENTER | wx.BOTTOM, border=20)
self.verticalsizer.AddStretchSpacer(prop=1)
HomePanel.SetSizer(self.verticalsizer)
HomePanel.Layout()
我得到一个类型错误就行了SetSizer():
TypeError: unbound method SetSizer() must be called with HomePanel instance as first argument (got BoxSizer instance instead)
我不知道还有什么我可以分配SetSizer(),但因为这不会工作,或者我卡住了。有没有办法解决这个问题或者做得更好?
为什么你想使用类调用实例方法?为什么不只是'self.SetSizer(self.verticalsizer); self.Layout()'? – ekhumoro