为什么tkinter窗口/盒子不稳定关闭并停止程序?

2024-05-15 18:51:31 发布

您现在位置:Python中文网/ 问答频道 /正文

长话短说,我一直在为学校做一个交互式GUI(tkinter)文字游戏程序。一开始,一切都很顺利,但是完成了代码之后,当我运行它时,它开始以意想不到的方式运行。一些对话框(特别是

 if tkinter.messagebox.askyesno():

(thingy)只需快速回答“否”选项,而不是等待用户输入。有时,窗口完全关闭,导致整个程序退出。然而,尽管这些错误都是相同的(例如,tkinter窗口关闭/自动应答/在应该之前停止程序),它们通常每次都发生在不同的地方。我不确定这是否与tkinter在其他代码中嵌套、打开、重新打开和关闭了多次有关,这使得它运行混乱,但据我所知,我只在正确的位置销毁了tkinter窗口。你知道吗

我的部分代码涉及while循环-我不确定这是否会干扰mainloop(),但我找不到其他方法允许用户重复游戏任意多次。你知道吗

我知道这个问题很模糊,但我主要是在寻找一些提示——如果我把它分成不同的部分,整理一下,为while循环找到一个替代方法,是否更容易诊断,等等

谢谢!你知道吗


Tags: 方法代码用户程序iftkinter方式gui
1条回答
网友
1楼 · 发布于 2024-05-15 18:51:31

在进入下一段代码之前,应该完全完成TKinter对话框并存储结果。你知道吗

确保您为对话框提供了所有参数(您的示例不包括参数)。你知道吗

result = tkinter.messagebox.askyesno('Confirm', 'Do you want to do this')
if result == true:

相关问题 更多 >