我的問題是,如果我們可以分配/綁定某個值到某個項目並隱藏該值(或者如果我們可以用另一種方式做同樣的事情)。ListCtrl - wxPython/Python
例子:比方說對的ListCtrl列是「名稱」和「說明」:
self.lc = wx.ListCtrl(self, -1, style=wx.LC_REPORT)
self.lc.InsertColumn(0, 'Name')
self.lc.InsertColumn(1, 'Description')
當我增加一個項目,我希望他們以顯示名稱參數和說明:
num_items = self.lc.GetItemCount()
self.lc.InsertStringItem(num_items, "Randomname")
self.lc.SetStringItem(num_items, 1, "Some description here")
現在我想要做的事情基本上是分配給那些沒有顯示的項目的東西,所以我可以稍後訪問應用程序。
所以我想補充一點,是不是在應用中顯示,但在項目值喜歡的東西:
hiddendescription = "Somerandomthing"
仍然沒有已瞭解?那麼可以說,我添加一個按鈕,與其他一些TextCtrls設置參數和TextCtrls添加項參數爲:
「名稱」
「說明」
「Hiddendescription」
然後用戶填充這個文本框並點擊按鈕來創建該項目,我基本上只想顯示名稱和描述,並隱藏「隱藏描述」,但是這樣做以後我可以使用它。
對不起,在這篇文章上解釋了一次以上,但我想確保你明白我假裝要做的事情。
我不知道這件事,非常感謝您的幫助! – dpswt 2010-04-16 21:54:17
除非我遺漏了一些東西,這不會讓你關聯任意數據,它可以讓你關聯一個整數。如果使用[tgray解決方案](http://stackoverflow.com/a/2656249/665488),這隻對'任意數據'有用。 – 2012-01-11 02:45:43
@Cam:你說得對。如果你需要存儲一個任意的python對象,你需要把它放在一個字典中並存儲密鑰。 wxPython wiki上的[This page](http://wiki.wxpython.org/ListControls)有一個mixin類,它添加了一個SetPyData方法來自動執行此操作。它缺少GetPyData和FindPyData方法,但它們很容易添加。 – 2012-01-12 08:02:59