wxgrid突出显示行
我在找一些解决办法,但没找到合适的。
我想在一个叫 wx.Grid 的表格中,当某个日期过了的时候,把那一行高亮显示出来。
有没有什么函数可以做到这一点呢?
<i>
def load_grid_fare (self, fares):
for i, j, k in fares :
self.grid_fare.SetCellValue(count_rows,0,str(i.fare_id))
self.grid_fare.SetCellValue(count_rows,1,str(j.service_name).encode('utf8'))
self.grid_fare.SetCellValue(count_rows,2,str(k.vehicle_type_name).encode('utf8'))
self.grid_fare.SetCellValue(count_rows,3,str(i.fare_cash))
self.grid_fare.SetCellValue(count_rows,4,str(i.fare_startdate.strftime("%d/%m/%Y")))
self.grid_fare.SetCellValue(count_rows,5,str(i.fare_enddate.strftime("%d/%m/%Y")))
count_rows += 1
1 个回答
1
你需要去看看wxPython的演示,这个演示可以从wxPython的网站上下载。在这个演示里,有几个例子展示了如何改变单元格、行或列的颜色。在演示中,它显示你需要创建一个GridCellAttr()对象,然后做以下操作:
attr = wx.grid.Grid.GridCellAttr()
attr.SetBackgroundColour(wx.RED)
self.SetRowAttr(5, attr)
这里的“self”指的是wx.grid.Grid。上面的代码会把第六行的背景颜色设置为红色。