0
我遇到了一個我正在處理的GUI的問題。通過單擊該按鈕創建窗格兩次,然後每次關閉該窗格。當我嘗試第三次創建它時,它會凍結。我有限的代碼如下:wxpython嘗試添加aui窗格時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()
您的意思是**窗格**,對不對? – 2013-03-14 03:26:25
我並不十分熟悉wxPython,但你的按鈕事件處理程序在哪裏? – 2013-03-14 03:28:22
在控制器類 – Wallace 2013-03-14 03:29:23