1

I've made a tab class like this:

class TabPanel(wx.Panel):

    GRID_AREA = {}
    SURROUND_AREA = {}
    TOP_AREA = {}
    BORDER_AREA = {}
    OUTPUT_AREA = {}

    def __init__(self, parent):
        wx.Panel.__init__(self, parent = parent, id = wx.ID_ANY)

    def Initialize(self, grid_area):
        page_background_color = wx.Colour(150, 150, 150)

        self.GRID_AREA = grid_area

        self.SURROUND_AREA = wx.BoxSizer(wx.VERTICAL)
        self.SURROUND_AREA.Add(self.GRID_AREA, 0, wx.ALL, 15)

        self.TOP_AREA = wx.BoxSizer(wx.HORIZONTAL)
        self.TOP_AREA.Add(self.SURROUND_AREA, 0, wx.ALL, 15)

        self.OUTPUT_AREA = wx.TextCtrl(self, -1, size = (3366, 1768), style = (wx.TE_AUTO_SCROLL | wx.TE_LINEWRAP | wx.TE_MULTILINE | wx.TE_READONLY | wx.TE_RICH2))
        self.OUTPUT_AREA.SetBackgroundColour(page_background_color)

        self.BORDER_AREA = wx.BoxSizer(wx.VERTICAL)
        self.BORDER_AREA.Add(self.TOP_AREA, 0, wx.ALL, 15)
        self.BORDER_AREA.Add(self.OUTPUT_AREA, 0, 1, wx.EXPAND)    

        self.SetSizer(self.BORDER_AREA)
        self.SetAutoLayout(True)    

And from it I derive a class, like this:

class TabPanel_Profiles(TabPanel):

    GRID_AREA = {}
    SURROUND_AREA = {}
    TOP_AREA = {}
    BORDER_AREA = {}
    OUTPUT_AREA = {}

    def __init__(self, parent):
        TabPanel.__init__(self, parent = parent)

        PROFILES_GRID_TEMPLATE = wx.FlexGridSizer(cols = 6, hgap = 6, vgap = 36)

        page_color = wx.Colour(30, 30, 30)
        text_color = wx.Colour(160, 190, 255)
        button_text_color = wx.Colour(70, 20, 130)

        ######################MAKE SOME CONTROLS HERE
        PROFILES_GRID_TEMPLATE.AddMany([ #LIST CONTROLS HERE

            ])

        self.Initialize(PROFILES_GRID_TEMPLATE)   

Then in the master class I do:

class MASTER_CLASS(wx.Notebook): 
    PROFILES_TAB = {}

    def __init__(self, parent, ID, log):
        wx.Notebook.__init__(self, parent, id=wx.ID_ANY, style = wx.BK_DEFAULT)


        self.PROFILES_TAB = TabPanel_Profiles(self)
        self.AddPage(self.PROFILES_TAB, "Profiles")

        self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED, self.OnPageChanged)
        self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGING, self.OnPageChanging)

    def OnPageChanged(self, event):
        old = event.GetOldSelection()
        new = event.GetSelection()
        sel = self.GetSelection()
        print 'OnPageChanged,  old:%d, new:%d, sel:%d\n' % (old, new, sel)
        event.Skip()

    def OnPageChanging(self, event):
        old = event.GetOldSelection()
        new = event.GetSelection()
        sel = self.GetSelection()
        print 'OnPageChanging, old:%d, new:%d, sel:%d\n' % (old, new, sel)
        event.Skip()      

And when I create it, everything is REALLY SMALL in a small corner, if I click it some of the dropdown menus expand, but why is it like that??

g.d.d.c
  • 46,865
  • 9
  • 101
  • 111
ulak blade
  • 2,515
  • 5
  • 37
  • 81

0 Answers0