Wxpython 如何重建配电盘
在我的init中,我有: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”的事
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