python - Second panel does not show up in wxpython application -
i want place 2 panels side side (horizontally) on panel, second panel not show up:
import wx szflags = wx.expand | wx.all min_height = 50 height_ratio = 4 pborder = 10 lborder = 5 class chartpanel(wx.panel): def __init__(self, *args, **kwargs): wx.panel.__init__(self, *args, **kwargs) self.setbackgroundcolour(wx.colour(226,226,226)) self.st = wx.statictext(self, label='chart panel') #self.chart = bar_line.canvaspanel(self, "320") sizer = wx.boxsizer(wx.vertical) sizer.add(self.st, 1 , szflags , lborder) #sizer.add(self.chart, 1 , szflags) self.setsizer(sizer) class notebookpage(wx.panel): def __init__(self, *args, **kwargs): fleet = kwargs.pop('fleet_name', none) wx.panel.__init__(self, *args, **kwargs) self.mainpanel = notebookpage_mainpanel(self, name='notebook_page_mainpanel', fleet_name=fleet) self.chartpanel = chartpanel(self, name='notebook_page_chartpanel') sizer = wx.boxsizer(wx.horizontal) sizer.add(self.mainpanel, 1, wx.expand|wx.all,border=10) sizer.add(self.chartpanel, 1, wx.expand|wx.all,border=10) self.setsizer(sizer)
here chartpanel doesn't show up. wrong above?
actually need create parent panel , add 2 of ur panels ..
create master panel contains 2 childs thats ur notebookpage , chart panel
class notebookpage(wx.panel): def __init__(self, *args, **kwargs): fleet = kwargs.pop('fleet_name', none) wx.panel.__init__(self, *args, **kwargs) self.masterpanel=wx.panel(self,-1) self.mainpanel = notebookpage_mainpanel(self.masterpanel, name='notebook_page_mainpanel', fleet_name=fleet) self.chartpanel = chartpanel(self.masterpanel, name='notebook_page_chartpanel') sizer = wx.boxsizer(wx.horizontal) sizer.add(self.mainpanel, 1, wx.expand|wx.all,border=10) sizer.add(self.chartpanel, 1, wx.expand|wx.all,border=10) self.setsizer(sizer)
reference u can see link
second implemented same multiple panels link
Comments
Post a Comment