我該如何允許一個UltimateListCtrl,以便能夠重新排序/重新排列用戶輸入自身?下面顯示的能力,但我不知道如何做到這一點。 DATA = {「3」,「3」,「1」), 1 :(「2」,「1」,「2」), 2 :(「1」,「2」 「3」) }如何讓UltimateListCtrl自行重新排列,wxpython
import wx
import wx.lib.mixins.listctrl as listmix
from wx.lib.agw import ultimatelistctrl as ULC
class MyList(ULC.UltimateListCtrl, listmix.ColumnSorterMixin):
def __init__(self, parent, columns):
ULC.UltimateListCtrl.__init__(self, parent, agwStyle=ULC.ULC_REPORT | ULC.ULC_HAS_VARIABLE_ROW_HEIGHT)
self.itemDataMap = DATA
listmix.ColumnSorterMixin.__init__(self, columns)
self.Bind(wx.EVT_LIST_COL_CLICK, self.OnColumn)
def OnColumn(self, e):
self.Refresh()
e.Skip()
def GetListCtrl(self):
return self
class MainWindow(wx.Frame):
def __init__(self, *args, **kwargs):
wx.Frame.__init__(self, *args, **kwargs)
self.list = MyList(self, 3)
self.list.InsertColumn(0, "A")
self.list.InsertColumn(1, "B")
self.list.InsertColumn(2, "C")
items = DATA.items()
for key, data in items:
index = self.list.Append(data)
self.list.SetItemData(index, key)
self.Show()
app = wx.App(False)
win = MainWindow(None)
app.MainLoop()
'下面顯示的能力,但我不知道它是如何完成的。你可以重述一下你的問題嗎?我無法理解問題是什麼。就我所見,您的代碼完美無瑕。什麼'重新排序/用用戶輸入重新排列'意味着什麼?顯示您對給定條目的期望。 – joaquin 2012-01-04 08:41:46