wxpython关闭窗口
时间: 2023-11-13 22:05:22 浏览: 68
python 按钮点击关闭窗口的实现
5星 · 资源好评率100%
在wxPython中,可以使用wx.EVT_CLOSE事件来捕获关闭窗口的事件。以下是一个简单的示例代码,可以在用户点击窗口的关闭按钮时弹出一个对话框来确认是否关闭窗口:
```
import wx
class MyFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY, "My Frame")
self.Bind(wx.EVT_CLOSE, self.on_close)
def on_close(self, event):
dlg = wx.MessageDialog(self, "Do you really want to close this window?", "Confirm Exit", wx.OK|wx.CANCEL|wx.ICON_QUESTION)
result = dlg.ShowModal()
dlg.Destroy()
if result == wx.ID_OK:
self.Destroy()
if __name__ == "__main__":
app = wx.App()
frame = MyFrame()
frame.Show()
app.MainLoop()
```
在这个示例中,我们首先创建了一个MyFrame类,它是wx.Frame的子类。在MyFrame的构造函数中,我们使用self.Bind(wx.EVT_CLOSE, self.on_close)绑定了wx.EVT_CLOSE事件到on_close方法上。
on_close方法中,我们创建了一个wx.MessageDialog对话框,用于询问用户是否真的要关闭窗口。如果用户点击了对话框中的OK按钮,我们调用self.Destroy()来关闭窗口。
最后,我们创建了一个wx.App并开始了主事件循环,这样我们的窗口就可以显示在屏幕上了。
阅读全文