wx.Hypertreelist - 如何向其中添加小部件? / 如何使文本可编辑?

wx.Hypertreelist - How add widgets to it? / How make texts editable?

最近发现了Hypertreelist,好像是我需要的,但是没有很好的例子。所以我有几个问题:

到目前为止,这是我的代码:

import wx
import wx.lib.agw.hypertreelist as HTL

class MyFrame(wx.Frame):
    def __init__(self, parent):
        wx.Frame.__init__(self, parent, -1, "HyperTreeList Demo")

        tree_list = HTL.HyperTreeList(self)
        tree_list.AddColumn("First column")
        root = tree_list.AddRoot("Root")
        parent = tree_list.AppendItem(root, "First child")
        child = tree_list.AppendItem(parent, "First Grandchild")
        tree_list.AppendItem(root, "Second child")

app = wx.App(0)
frame = MyFrame(None)
app.SetTopWindow(frame)
frame.Show()
app.MainLoop()

您可以尝试使用 HitTest 和 EditLabel。代码可能如下所示:

pt = event.GetPosition()
    item, flags, column = self.tree.HitTest(pt)

    if "CP" in item.GetText():
        if column > 1:
            self.tree.EditLabel(item, column)    
    event.Skip()