如何从其父级删除或销毁wx.panel(另一个wx.panel对象)?
我正在用wxPython开发一个图形用户界面(GUI)。我画了一个方块,代表一个CD对象,放在另一个方块里面(也是用wxPanel类),这个方块代表CD容器对象。
我想在CD窗口的右键菜单中添加“删除这个CD”选项,这样可以把CD窗口去掉。
基本上,我的代码看起来是这样的(为了简单起见,我只保留了主要部分):
class CDContainerWindow(wx.Panel):
def __init__(self):
wx.Panel.__init__(self, parent, id, pos, size)
cd_win=CDWindow()
class CDWindow(wx.Panel):
def __init__(self):
wx.Panel.__init__(self, parent, id, pos, size)
self.Bind(wx.EVT_MENU, self.OnDeleteCD, item_CD)
def OnDeleteCD(self, event):
self.destroy()
但是出现了一个错误信息“段错误”。
我这样做有什么问题呢?我该如何从CD容器窗口中删除这个CD窗口呢?
1 个回答
3
可能有一个布局管理器还在使用已经被删除的面板?你应该先把这个面板从布局管理器中移除。