python中网格Grid和列表List的认识

一、网格Grid的有关操作
imort wx.Grid
class SimpleGrid( wx.grid.Grid )   # 定义类,继承wx.grid.Grid
wx.grid.Grid.__init__( self, parent, -1, (40,30) , (500,280) )     # 初始化
self.CreateGrid(5, 3)   # 创建网格
self.SetColLabelValue( 0, "姓名" )  # 设置列的名称
self.SetColSize ( 0, 50 )                # 设置列的宽度
self.SetRowLabelValue( 0 ,  ""   )       # 设置行的名称
self.SetCellValue( i,  j, value)       # 设置单元格的值,这个值一定要是字符或字符串格式
另外还可以设置单元格的背景色和前景色等等
二、列表的操作
datasource = [    [ "", "", "", ],  ["··········"],··········
                      ]                        # 数据源可以是列表格式,但大多情况下是列表中嵌套有子列表,也可以是字典格式
class NewList( wx.ListCtrl ):
self.InsertColumn( i, colname)  # 设置列的值,同样也必须是字符或字符创格式
self.SetColumnWidth(0, 55)     # 设置列的宽度
# 以下语句是得到datasource中第一个子列表的索引,返回值index是int值,从0开始,可理解为行,
          加上sys.maxint表示是从最后一行一直加下去,因此头文件中要导入sys模块
data = datasource[0]
index = self.InsertStringItem(sys.maxint, data [0])

        self.SetStringItem( index, j, data[j] )  # 设置该行各列的值
在建立列表时,容易出现的错误有以下几种,也是我刚开始接触时犯的错误。
1、关于style 的问题,style = wx.LC_REPORT,这个问题是一个很大的问题,一个搞清除自己的列表是什么性质的,若只是一个报告形式的表,style 设置为wx.LC_REPORT就行了,不能在添加其他形式的了,和容易因为这个原因导致python代码运行出错。这个问题困扰了我半天,刚开始把所有的style 都添加进去了,呵呵
2、列表初始化以后,不能象Grid那样可直接设置行数和列数来创建新的网格,而是一个空的列表,只有向里面添加项目之后才能够使用语句self.SetStringItem(  i,  j,  value )来针对某一个具体的单元格设置,否则也会出错。
以上是我的各人经验,欢迎交流python的有关知识。

转载于:https://www.cnblogs.com/chengxuyuan326260/p/6360400.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值