wx.ListCtrl 列表的增删改
1.创建列表
self.list = wx.ListCtrl(self, -1, style = wx.LC_REPORT,size=(315, 200))
2. 添加表头,设置宽度
self.list.InsertColumn(0, " ")
self.list.InsertColumn(1, "0列")#添加表头
self.list.InsertColumn(2, "1列")
self.list.InsertColumn(3, "2列")
self.list.InsertColumn(4, "3列")
self.list.SetColumnWidth(0, 24)
self.list.SetColumnWidth(1, 85)#设置列宽
self.list.SetColumnWidth(2, 68)
self.list.SetColumnWidth(3, 68)
self.list.SetColumnWidth(4, 68)
3. 添加项目数据
total = self.list.GetItemCount()
indexItem = self.list.InsertItem(total, str(self.count))#插入项
self.list.SetItem(indexItem,1,'项目列1')
self.list.SetItem(indexItem,2,'项目列2')
self.list.SetItem(indexItem,3,'项目列3')
self.list.SetItem(indexItem,4,'项目列4')
4. 删除一项
if self.list.GetFocusedItem() >=0: #判断列表是否聚焦
self.list.DeleteItem(self.list.GetFocusedItem()) #对聚焦项进行删除
5. 删除所有项
self.list.DeleteAllItems()
6. 获取某列某项
if self.list.GetFocusedItem() >=0: #判断是否在项上聚焦
i = self.list.GetFocusedItem() #获取聚焦项
self.list.GetItemText(i,0)
self.list.GetItemText(i,1)
self.list.GetItemText(i,2)
self.list.GetItemText(i,3)#获取i列某项
7.改某列某项
if self.list.GetFocusedItem() >=0: #判断是否在项上聚焦
i = self.list.GetFocusedItem() #获取聚焦项
self.list.SetItem(i, 0, '0') #修改聚焦项上的某列
self.list.SetItem(i, 1, '1')
self.list.SetItem(i, 2, '2')
self.list.SetItem(i, 3, 'list_E2')
self.list.SetItem(i, 4, 'list_E3')
如果数据需要后端保存每项存入字典中
每个字典存入列表(数组)中