2010-06-10 28 views
1

我已經在wxPython中創建了一個自定義控件(基於面板),該控件在面板中提供了自定義控件列表。用戶需要能夠隨意添加行並顯示這些行。我無法在添加新控件後實際顯示。我知道它們存在,因爲它們在框架的調整大小後出現,或者如果我在框架上調用Show()之前添加它們。我確信自己是基本的東西,但我找不到這個錯誤。新的wxpython控件在調整大小之前不會顯示

add函數如下:

def addRow(self, id, reference, page, title, note): 

    newRow = NoteListRow(self.listPanel, id, reference, page, title, note) 
    self.listSizer.Add(newRow, flag=wx.EXPAND | wx.LEFT) 
    self.rows.append(newRow) 

    if len(self.rows) == 1: 
     self.highliteRow(newRow) 

    self.Refresh() 
    self.Update() 

    return newRow 

我想我失去了一些東西有關如何刷新和更新都應該循規蹈矩,所以即使在那些一個很好的擴展基準可能會有所幫助。

回答

3

嘗試self.Layout()

嘗試self.GetParent().Layout()

包括Refresh()

Update()應該沒有必要。

+0

self.GetParent()。佈局()做到了。謝謝! – acrosman 2010-06-10 02:33:53

+0

在我的情況下,一個按鈕已經存在,但沒有顯示。刷新()做了訣竅。 – Hauke 2016-08-30 09:09:38

相關問題