2010-03-10 60 views
0

我正在使用wxPython网格,但我无法设置它的背景颜色(没有填充单元格的网格部分)。我尝试与grid.SetBackgroundColour,但没有运气;显示的背景色始终是窗口的默认系统颜色。如何设置wxPython网格背景颜色?

wx.version() - > 2.8.10.1(MSW-的unicode)

内容sys.version - > 2.5(R25:51908,2006年9月19日,9点52分17秒)[MSC v.1310 32 (英特尔)]

O/S版本 - > Windows XP SP3,但我尝试使用基于Ubuntu的Python live cd,结果相同。

import wx 
import wx.grid 

class TestFrame (wx.Frame): 
    def __init__ (self): 
     wx.Frame.__init__ (self, None, title="Grid Table", size=(640,480)) 

     grid = wx.grid.Grid(self, size=(300,300)) 
     grid.CreateGrid(2,2) 
     grid.SetCellValue(0,0,"1") 

     color = (100,100,255) 
     attr = self.cellAttr = wx.grid.GridCellAttr() 
     attr.SetBackgroundColour(color) 

     # for row, col in 
     for row in xrange(2): 
      for col in xrange(2): 
       grid.SetAttr(row, col, attr) 

     grid.SetBackgroundColour(color)  # <<< This don't work! 

app = wx.PySimpleApp() 
frame = TestFrame() 
frame.Show() 
app.MainLoop() 

回答

2

grid.SetDefaultCellBackgroundColour(color)将着色所有内容,包括单元格外的区域。

+0

很好,谢谢!我错过了文档中的数百种颜色和颜色:) – PabloG 2010-03-10 16:02:01