我已经在 wxPython 中为 ListCtrl 编写了代码:
...
self.list_ctrl = wx.ListCtrl(panel, size=(-1,150), style=wx.LC_REPORT|wx.BORDER_SUNKEN)
self.list_ctrl.InsertColumn(0, 'Name')
self.list_ctrl.InsertColumn(1, 'Old value')
self.list_ctrl.InsertColumn(2, 'New value')
self.list_ctrl.InsertColumn(3, 'Old percent')
self.list_ctrl.InsertColumn(4, 'New percent')
...
但我想获得具有以下 header 组织的 ListCtrl(或其他小部件):
我认为使用 ListCtrl 很难解决这个问题,可以使用 wxPython 中的另一个小部件吗?
请您参考如下方法:
正如我在您交叉发布的 wxPython 邮件列表中指出的那样,ListCtrl 不提供此功能。您也许能够使用列跨越技术和您自己的排序算法对网格控件 (wx.grid.Grid) 执行此操作。您可以破解 UltimateListCtrl 来执行此操作,因为它是纯 Python 而不是包装的 C++ 对象,但这将是一个重要的补丁/破解。
最好的方法可能是推出您自己的小部件。在 wxPython wiki、wxPython 演示和它们的邮件列表中有自定义小部件的示例。
