2016-05-20 33 views
1

我必須使用grid.I使用grid.SetLabelBackgroundColour(「綠色」)設置表的背景顏色。但它正在使網格溢出,並改變標題外區域的顏色。 任何人都可以請幫我解決這個問題。wxpython表標籤背景顏色溢出網格

import wx 
import wx.grid 

class GridFrame(wx.Frame): 

    def __init__(self, parent): 

     wx.Frame.__init__(self, parent) 

     # Create a wxGrid object 
     grid = wx.grid.Grid(self, -1) 

     # Then we call CreateGrid to set the dimensions of the grid 
     # (100 rows and 10 columns in this example) 
     grid.CreateGrid(100, 10) 
     grid.SetLabelBackgroundColour("green") 
     # We can set the sizes of individual rows and columns 
     # in pixels 
     grid.SetRowSize(0, 60) 
     grid.SetColSize(0, 120) 

     # And set grid cell contents as strings 
     grid.SetCellValue(0, 0, 'wxGrid is good') 

     # We can specify that some cells are read.only 
     grid.SetCellValue(0, 3, 'This is read.only') 
     grid.SetReadOnly(0, 3) 

     # Colours can be specified for grid cell contents 
     grid.SetCellValue(3, 3, 'green on grey') 
     grid.SetCellTextColour(3, 3, wx.GREEN) 
     grid.SetCellBackgroundColour(3, 3, wx.LIGHT_GREY) 

     # We can specify the some cells will store numeric 
     # values rather than strings. Here we set grid column 5 
     # to hold floating point values displayed with width of 6 
     # and precision of 2 
     grid.SetColFormatFloat(5, 6, 2) 
     grid.SetCellValue(0, 6, '3.1415') 

     self.Show() 


if __name__ == '__main__': 

    app = wx.App(0) 
    frame = GridFrame(None) 
    app.MainLoop() 

回答

0

我無法找到一種方法來強制將標籤顏色限制爲定義標籤的數量。
我不知道以下內容是否對您有任何用處,但您可以限制框架的大小,以便用戶通過爲框架設置尺寸並限制調整它的大小。

wx.Frame.__init__(self, parent, size=(950,500),style= wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX) 
+0

我也無法找到直接的方法。可能有解決方法。我目前使用的一種解決方法是將表格保存在單獨的面板中,並在左側放置一個空白麪板。 – BusyTraveller