Hi,
I searched the mailing list and find out how to set tooltip for
wx.TreeCtrl, but it doesn't work for wx.TreeListCtrl.
An example is listed below. OnTreeTooltip() is never been called.
Is there any way to set tooltips for wx.TreeListCtrl items?
Any help would be appreciated!
···
##=========================================================
import wx
from wx.gizmos import TreeListCtrl
class MyApp(wx.App):
def OnInit(self):
frame = wx.Frame(None, -1, "TreeCtrl Tooltips")
self.tree = TreeListCtrl(frame, -1)
self.tree.AddColumn('main')
root = self.tree.AddRoot("r00t")
c1 = self.tree.AppendItem(root, "Topic 1")
c1a = self.tree.AppendItem(c1, "Item 1")
c2 = self.tree.AppendItem(root, "Topic 2")
c3 = self.tree.AppendItem(root, "Topic 3")
c3a = self.tree.AppendItem(c3, "Item 1")
c3b = self.tree.AppendItem(c3, "Item 2")
c3c = self.tree.AppendItem(c3, "Item 3")
c3d = self.tree.AppendItem(c3, "Item 4")
self.tree.Expand(c1)
self.tree.Expand(c3)
self.tree.SelectItem(c1)
frame.Show(True)
self.SetTopWindow(frame)
## this doesn't work
self.tree.Bind(wx.EVT_TREE_ITEM_GETTOOLTIP,self.OnTreeTooltip)
## this doesn't work either
## self.tree.GetMainWindow().Bind(wx.EVT_TREE_ITEM_GETTOOLTIP,self.OnTreeTooltip)
return True
def OnTreeTooltip(self, event):
## this method is never called!
print "Tool tip!" #debug
itemtext = self.tree.GetItemText(event.GetItem())
event.SetToolTip("This is a ToolTip for %s!" % itemtext)
event.Skip()
app = MyApp(0)
app.MainLoop()
##=========================================================
Bruce Who
HuXuZhao@hotmail\.com
2005\-03\-03