gpt4 book ai didi

python - gtk 窗口关闭后退出无限循环

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

我正在创建一个程序,不断检查 MySQL 数据库中的更改,并根据更新 GTK 显示。不断检查的部分处于无限循环中。

我想要的是,一旦 GTK 窗口关闭,我就可以跳出无限循环。

但我不知道该使用什么条件。我试过了

if !window:

if window == None:

但无论哪种情况,它都不起作用。

我的代码结构是这样的:

while True:

# my code

while gtk.events_pending():
gtk.main_iteration()

# something to exit here

window.connect("destroy", gtk.main_quit())

我不知道将“window.connect”放在那里是否会导致问题,因为窗口似乎关闭得很好。另外,如果我将它放在循环内或循环之前,我会收到运行时错误:在主循环之外调用。

那么重申一下,如何以窗口关闭为条件退出无限循环?我不希望用户必须使用 Ctrl + C。

提前致谢!

最佳答案

这是一个经典的后台线程问题。你需要有一个像这样的循环:

closing = False

while not closing:
// do the MySQL stuff

然后将信号处理程序连接到将关闭设置为 True 的窗口销毁事件

关于python - gtk 窗口关闭后退出无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11676904/

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