Splitter and wxScrolledWindow size

Hi there,

I have a problem that baffles me. The following structure exists:

Frame -> Notebk -> Panl -> Split -> wxListCtrl
              -> noteBk -> wxScrolledWindow

The panel in the notebook has been added as on the instructions in the
Demo application. bug #216861

It works up to wxListCtrl. The scrolled window is added correctly to the
notebook. However, the size of the Scrolled Window and the Notebook are
incorrect.As a matter of fact they are bigger than the entire screen. I
have tried all kind of sizers, but don't seem to get it right.

I am using Python 2.2.1 (standard installation Redhat 8), wxGTK 2.3.3
and Boa Constructor.

If any of you understands what is going wrong, please help me.

Kind regards,
Dick Kniep

Here is the code. Apologize for the wrapping lines......

    def __init__(self, parentscrn):
        if parentscrn: self._init_ctrls(parentscrn)
        else: self._init_ctrls(NULL)

        self.CLIENTEN_SCRN_ID = wxNewId()
        self.CLIENTENDETAILS_SCRN_ID = wxNewId()
        self.CLIENTENSPLITTER = wxNewId()
        self.CLIENTLIST_ID = wxNewId()

        self.SetAutoLayout(true)

        self.splitter = wxSplitterWindow(self, self.CLIENTENSPLITTER,
size = parentscrn.GetClientSize(), style=wxNO_3D|wxSP_3D)
        def EmptyHandler(evt): pass
        EVT_ERASE_BACKGROUND(self.splitter, EmptyHandler)
        self.nb = wxNotebook(self.splitter,
self.CLIENTENDETAILS_SCRN_ID, style=wxCLIP_CHILDREN|wxNB_BOTTOM)
        self.splitter.SetMinimumPaneSize(20)
        self.scherm = "personen"
        self.tablenm = "Clienten"

        self.clientlist = DefListCtrl("ClientenMaint", self.scherm,
self.tablenm, self.splitter, "Ondclienten", 0, "where per_id < 20",
None, self.CLIENTLIST_ID, 1)

        def OnReSize(evt):
            self.splitter.SetSize(evt.GetSize())
            self.PersonaliaPanel.Layout()
        EVT_SIZE(self, OnReSize)

        EVT_LIST_ITEM_SELECTED(self, self.CLIENTLIST_ID,
self.OnClientSelected)

        try:
            self.q = self.config.Option('screens','clientscreen')
        except:
            self.q = "PERSONALIA"

        self.defPages()

    def defPages(self):
        if not hasattr(self, "PersonaliaPanel") :
            self.PersonaliaPanel = self.BldPersonaliaPanel(self)
            self.nb.AddPage(bSelect = true, imageId = -1, pPage =
self.PersonaliaPanel, strText = 'Personalia')

        if not hasattr(self, "BedrijfsPanel") : self.BedrijfsPanel =
self.BldBedrijfsPanel()
        if not hasattr(self, "MedewerkersPanel") : self.MedewerkersPanel
= self.BldMedewerkersPanel()
        if not hasattr(self, "ContactenPanel") : self.ContactenPanel =
self.BldContactenPanel
        if not hasattr(self, "StatusPanel") : self.StatusPanel =
self.BldStatusPanel()

        self.splitter.SplitHorizontally(self.clientlist,self.nb,0)

    class BldPersonaliaPanel(wxScrolledWindow, GenScrn.MaintScreen):
        def __init__(self, prnt):
            wxScrolledWindow.__init__(self, id = wxNewId(), parent =
prnt.nb, style=wxWANTS_CHARS)
            GenScrn.MaintScreen.__init__(self, functie="FixedTxt",
afstand = 20, operation = "N", scherm = prnt.scherm, labelpositie=20,
horpositie=140, vertikaalpositie=20,scrolledwindow=1)
            self.Tab =
Opendb.TableObjs.Clienten().register(Opendb.TableObjs.SQLDictdb)