При разработке эмулятора, Вы интерпретируете блок процессора, что система продолжает работать (Z80, 8080, ЦП PS, и т.д.).
также необходимо эмулировать все периферийные устройства, которые система имеет (видеовыход, контроллер).
необходимо начать писать эмуляторы для simpe систем как старое доброе Game Boy (которые используют процессор Z80, я не не путающий), ИЛИ для C64.
Вы можете поместить изменяемую часть вашей панели на субпанели, например, вот так:
def MakeButtonPanels(self):
self.buttonPanel1 = wx.Panel(self)
self.Add(self.buttonPanel1, 0, wxALL|wxALIGN_LEFT, 5)
# ... make the three buttons and the button sizer on buttonPanel1
self.buttonPanel2 = wx.Panel(self)
self.Add(self.buttonPanel2, 0, wxALL|wxALIGN_LEFT, 5)
# ... make the loading label and its sizer on buttonPanel2
self.buttonPanel2.Show(False) # hide it by default
def HideButtons(self):
self.buttonPanel1.Show(False)
self.buttonPanel2.Show(True)
self.Layout()