0

我正在编写一个有时会遇到错误的程序。当它这样做时,它会弹出一个 Tkinter 对话框,询问用户是否继续。这是一个更复杂的版本:

keep_going = False
KeepGoingPrompt(keep_going)
if not keep_going:
    return

提示设置keep_goingTrue或离开它False。问题是,代码似乎在KeepGoingPrompt打开时继续。我尝试存储对的引用prompt并添加一个循环

while prompt:
    time.sleep(1)

但是python卡在循环中并冻结了。有更好的方法吗?

谢谢

4

2 回答 2

1

您可以使用 tkMessageBox 类弹出一个问题对话框,该对话框是模态的,在用户单击按钮之前不会返回。有关详细信息,请参阅Tkinter 书

于 2010-10-15T00:49:41.470 回答
0

1)您是否在 IDLE 中运行您的代码?它可能负责使对话不阻塞,而它确实应该阻塞。

2) 如果在 IDLE 之外运行没有帮助,请查找指定行为是阻塞还是非阻塞的 tkinter/dialogue 选项

于 2010-10-15T00:50:20.387 回答