In wxPython http://wxpython.org/您可以使用wxGrid http://docs.wxwidgets.org/stable/wx_wxgrid.html#wxgrid为此,因为它支持虚拟模式和自定义单元格渲染器。
This http://docs.wxwidgets.org/stable/wx_wxgridtablebase.html#wxgridtablebase是您必须为 wxGrid“数据提供者”实现的最小接口:
class GridData(wx.grid.PyGridTableBase):
def GetColLabelValue(self, col):
pass
def GetNumberRows(self):
pass
def GetNumberCols(self):
pass
def IsEmptyCell(self, row, col):
pass
def GetValue(self, row, col):
pass
This http://docs.wxwidgets.org/stable/wx_wxgridcellrenderer.html#wxgridcellrenderer是您必须为 wxGrid 单元格渲染器实现的最小接口:
class CellRenderer(wx.grid.PyGridCellRenderer):
def Draw(self, grid, attr, dc, rect, row, col, isSelected):
pass
您可以在以下位置找到使用这些类的工作示例:wxPython 文档和演示 http://wxpython.org/download.php,它称为 Grid_MegaExample。