擅长:python、mysql、java
<p>您没有正确绑定回调。您目前需要:</p>
<pre><code>self.Bind (wx.EVT_TREE_ITEM_ACTIVATED, self.OnAdd, id=10)
</code></pre>
<p>但是第三个参数是<code>source</code>;<code>id</code>是第四个参数。所以,把它改成:</p>
^{pr2}$
<p>这样,您将在<code>OnAdd</code>函数中得到的<code>event</code>参数将是<code>tree</code>实例,该实例具有可用的<code>GetItem</code>方法。在</p>
<p>完整示例:</p>
<pre><code>import wx
class TreeExample(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, title='Tree Example', size=(200, 130))
self.tree = wx.TreeCtrl(self, size=(200, 100))
root = self.tree.AddRoot('root')
for item in ['item1', 'item2', 'item3']:
self.tree.AppendItem(root, item)
self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnActivated, self.tree)
self.tree.Expand(root)
def OnActivated(self, evt):
print 'Double clicked on', self.tree.GetItemText(evt.GetItem())
app = wx.PySimpleApp(None)
TreeExample().Show()
app.MainLoop()
</code></pre>