import wx
class MyFrame(wx.Frame):
def __init__(self):
super().__init__(None, wx.ID_ANY)
App = wx.App()
MyFrame().Show()
App.MainLoop()
print('в данном случае print работает после закрытия окна')
А здесь нет:
import wx class MyFrame(wx.Frame): def __init__(self): super().__init__(None, wx.ID_ANY) MyDialog() class MyDialog(wx.Dialog): def __init__(self): super().__init__(None, wx.ID_ANY) self.Show() App = wx.App() MyFrame().Show() App.MainLoop() print('в данном случае print не работает после закрытия окна')
Я конечно понимаю, что все решается добавлением этой строки в MyFrame
self.Bind(wx.EVT_CLOSE, lambda event: App.ExitMainLoop())