gpt4 book ai didi

python - wxPython 应用程序 - 确保所有对话框都被销毁

转载 作者:太空宇宙 更新时间:2023-11-03 19:36:58 24 4
gpt4 key购买 nike

我正在开发一个需要使用各种对话框的应用程序。我无法以某种方式绑定(bind)事件,以确保如果有人在关闭对话框之前关闭应用程序,我的对话框会被正确销毁。我希望使用这样的东西:

class Form(wx.Dialog):
def __init__(self):
wx.Dialog.__init__(None, -1, "Dialog")
self.Bind(wx.EVT_CLOSE, self.onClose)
self.Bind(wx.EVT_CLOSE, self.onClose, MAIN_WINDOW)
...
def onClose(self, evt):
self.Destroy()

我当前遇到的行为是,如果有人打开一个对话框,然后在关闭该对话框之前关闭应用程序,则应用程序不会完全退出。 MAIN_WINDOW 是对注册为顶级窗口的框架的引用。提前致谢!

最佳答案

我试图错误地使用事件冒泡。解决方案是确保对话框是顶级窗口的子级,以便应用程序退出也会强制对话框销毁。

class Form(wx.Dialog):
def __init__(self):
wx.Dialog.__init__(MAIN_WINDOW, -1, "Dialog")
self.Bind(wx.EVT_CLOSE, self.onClose)
...
def onClose(self, evt):
self.Destroy()

关于python - wxPython 应用程序 - 确保所有对话框都被销毁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3112456/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com