2008年5月19日 星期一

wxPython : List Control

List Control和List Box不同的地方在於, List Control的一筆資料可以有多個欄位, 這樣也讓我們的資料呈現方式更有彈性.

下面就介紹它的使用方法 :


self.list = wx.ListCtrl(panel, -1, style=wx.LC_REPORT)

建立List Control元件

self.list.InsertColumn(0, 'name', width=140)
self.list.InsertColumn(1, 'place', width=130)
self.list.InsertColumn(2, 'year', wx.LIST_FORMAT_RIGHT, 90)

定義List Control元件的Column名稱跟長度

index = self.list.InsertStringItem(sys.maxint, i[0])
self.list.SetStringItem(index, 1, i[1])
self.list.SetStringItem(index, 2, i[2])

把資料插入List Control裡面,
InsertStringItem : 將資料插入第sys.maxint row, 用sys.maxint確保資料從最後面開始插入,
function回傳值為插入的row的index, 第二個參數是第一個欄位的內容.
SetStringItem : 將資料插入index row的第1和第2個欄位, 裡面的內容分別為i[1], i[2]


參考資料 :
The wxPython tutorial

沒有留言: