我正在处理的GUI有问题。通过单击按钮创建两次窗格,然后每次都将其关闭。当我第三次尝试创建它时,它会冻结。我将代码限制为:
import wx
import wx.aui as aui
class Controller:
def __init__(self, app):
self.view = Frame()
self.view.btn.Bind(wx.EVT_BUTTON, self.onBtn)
def onBtn(self, event):
self.view.CreateTicket()
class Frame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY, size=(600,400))
self.panel = wx.Panel(self)
self.ticketPanel = wx.Panel(self.panel)
self.ticketPanel.Hide()
self.btn = wx.Button(self.panel)
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(self.btn)
self.panel.SetSizer(sizer)
self.CreatePain()
self.Layout()
self.Show()
def CreatePain(self):
self.mgr = aui.AuiManager(self.panel,
aui.AUI_MGR_DEFAULT
| aui.AUI_MGR_TRANSPARENT_DRAG
| aui.AUI_MGR_ALLOW_ACTIVE_PANE)
def CreateTicket(self):
self.mgr.AddPane(self.ticketPanel, aui.AuiPaneInfo().
Caption("TradeTicket").
Float().FloatingPosition((200,100)).
FloatingSize(wx.Size(50, 50)).MinimizeButton(True))
self.mgr.Update()
if __name__ == "__main__":
app = wx.App(False)
controller = Controller(app)
app.MainLoop()
我认为问题是你加了同样的东西wx.面板实例(
self.ticketPanel
)作为窗格。尝试为每个窗格创建一个新窗格。在相关问题 更多 >
编程相关推荐