如何在最后一个窗口关闭后退出pygtk应用程序
有没有办法让我告诉gtk,当应用程序最后一个打开的窗口关闭或被销毁时,自动调用gtk.main_quit()
?
如果没有直接的功能可以实现这个,我想到以下方法:在窗口的销毁方法中,获取当前进程中打开窗口的列表,如果这个列表为空,就退出。有没有办法获取这样的列表呢?
显而易见的解决方案是手动跟踪所有打开的窗口,但我希望如果可以的话,避免这样做。
2 个回答
2
使用方法 gtk.main_level() 可以获取当前主循环的嵌套级别。每当你调用 gtk.main() 函数时,嵌套级别就会增加,而调用 gtk.main_quit() 函数时,嵌套级别就会减少。
6
主窗口的销毁信号必须连接到 gtk main_quit:
window.connect("destroy", gtk.main_quit)