Wxpython 如何重建配电盘

Wxpython 如何重建配电盘,wxpython,Wxpython,在我的init中,我有: def __init__(self,parent,id): wx.Frame.__init__(self,parent,id,self.title,size=wx.DisplaySize()) self.newpanel=wx.Panel(self,size=wx.DisplaySize()) 并且有一个功能可以破坏面板“newpanel”并重建它(并在其中放置一些按钮等): 当我运行我的程序时,我没有得到一个错误,当“newpanelbuild”的事

在我的init中,我有:

def __init__(self,parent,id):
    wx.Frame.__init__(self,parent,id,self.title,size=wx.DisplaySize())
    self.newpanel=wx.Panel(self,size=wx.DisplaySize())
并且有一个功能可以破坏面板“newpanel”并重建它(并在其中放置一些按钮等):

当我运行我的程序时,我没有得到一个错误,当“newpanelbuild”的事件被激活时,会显示正确的面板-但我不能单击其中的按钮、文本Ctrl和下拉列表。。。面板似乎在背景中/没有焦点。因此,我尝试添加“self.newpanel.SetFocus()”,但没有效果。我怎样才能解决这个问题

编辑:
我只是把我所有的小问题合并成一个大问题:

你为什么要破坏这个面板?您只需将小部件添加到原始面板。我要做的是将可以更改为sizer的小部件放入sizer中,然后只销毁sizer或sizer的子项。您可能还对有关面板切换的本教程感兴趣:


Tahnks!但我只是把我所有的小问题组合成一个大问题:
def newpanelbuild(self,event):
    self.newpanel.Destroy()
    self.newpanel=wx.Panel(self,size=wx.DisplaySize())
    # creating some wx.Buttons, wx.TextCtrl's & wx.Choice