import
wx
class
TreePanel(wx.Panel):
def
__init__(
self
, parent):
wx.Panel.__init__(
self
, parent)
self
.tree
=
wx.TreeCtrl(
self
, wx.ID_ANY, wx.DefaultPosition, (
100
,
150
),
wx.TR_HAS_BUTTONS)
self
.tree.Create
self
.root
=
self
.tree.AddRoot(
'Root'
)
self
.itm
=
self
.tree.AppendItem(
self
.root,
'Item'
)
self
.si1
=
self
.tree.AppendItem(
self
.itm,
"Sub Item"
)
self
.si2
=
self
.tree.AppendItem(
self
.itm,
"Another Sub Item"
)
self
.tree.ExpandAll()
sizer
=
wx.BoxSizer(wx.VERTICAL)
sizer.Add(
self
.tree,
0
, wx.EXPAND)
self
.SetSizer(sizer)
self
.btn
=
wx.Button(
self
,
1
,
"Delete"
, (
10
,
170
))
self
.btn.Bind(wx.EVT_BUTTON,
self
.onclick)
def
onclick(
self
, e):
self
.tree.Delete(
self
.si2)
class
MainFrame(wx.Frame):
def
__init__(
self
):
wx.Frame.__init__(
self
, parent
=
None
, title
=
'TreeCtrl Demo'
)
panel
=
TreePanel(
self
)
self
.Show()
if
__name__
=
=
'__main__'
:
app
=
wx.App(redirect
=
False
)
frame
=
MainFrame()
app.MainLoop()