gpt4 book ai didi

Python GTK 3+ 控制关闭窗口

转载 作者:可可西里 更新时间:2023-11-01 09:58:14 24 4
gpt4 key购买 nike

我正在开发一个基于数据库 gtk3 的程序。使用的操作系统是 Linux Mint 17.3 64 位和 Win 7 64 位。在 Python 2.7 下测试的问题。我似乎无法控制关闭主窗口。如果有未保存的更改,我想防止窗口关闭。我使用:

self.window.connect("delete-event", self.quit)

“销毁”事件似乎完全无法控制。据我了解,“删除事件”应该是一个请求,因此是可控的。那么 self.quit 看起来像这样:

def quit(self, widget, something):
check_before_quit()

然后 check_before_quit() 检查是否有任何未保存的更改。发布对话框,主窗口仍在后面。如果按下 OK,代码设置为启动 Gtk.main_quit(),否则只是 return。此时无论我是按确定/取消还是关闭对话框,主窗口都会关闭!同样的事情发生在 Win 7 和 Linux 下。我在 Ctrl+Q 下有一个绑定(bind)以退出。这似乎工作正常,询问,并正确退出或留在程序中。那么按下关闭窗口按钮是否会以某种方式覆盖某些内容?

最佳答案

delete-event 处理程序应该返回 TrueFalse,而不是自行退出。如果您不想关闭窗口,它应该返回 True,如果您想要,它应该返回 False。这听起来有点倒退,所以我会换个说法:如果你想在那里停止信号,它应该返回 True,如果你不想,它应该返回 False对此做任何事情。

关于Python GTK 3+ 控制关闭窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36409848/

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