Python 当出现消息框时,如何禁用顶级窗口?

Python 当出现消息框时,如何禁用顶级窗口?,python,tkinter,Python,Tkinter,在我的代码中,我有一个顶级窗口(根窗口已使用“draw()”方法隐藏),如果您做了错误的事情,则会出现一个错误窗口(使用“messagebox.shourror()”函数创建)。现在,如何禁用顶级窗口以使用户仅与错误窗口交互 在使用“messagebox.batherror()”函数之前,我曾尝试在顶级窗口中使用“grab\u set()”方法,但它似乎没有任何作用,可能是因为我只能在根窗口中使用“grab\u set()”方法?我真的不知道如何解决我的问题。很高兴看到我的帖子被重新打开了!无论

在我的代码中,我有一个顶级窗口(根窗口已使用“draw()”方法隐藏),如果您做了错误的事情,则会出现一个错误窗口(使用“messagebox.shourror()”函数创建)。现在,如何禁用顶级窗口以使用户仅与错误窗口交互


在使用“messagebox.batherror()”函数之前,我曾尝试在顶级窗口中使用“grab\u set()”方法,但它似乎没有任何作用,可能是因为我只能在根窗口中使用“grab\u set()”方法?我真的不知道如何解决我的问题。

很高兴看到我的帖子被重新打开了!无论如何,谢谢acw1668发表的评论!为了达到我的目标,我必须在“messagebox.bathror(..)”指令中添加“parent”参数。下面是一个模板:

messagebox.showerror(TITLE, ERROR_MESSAGE, parent = YOUR_WINDOW_OBJECT)

默认情况下,父对象始终是根窗口,但在我的情况下,它必须是顶级窗口。

您不能撤消顶级窗口吗?您的问题在这里解决:祝您好运!调用
showerror()
时,尝试将
master
设置为
TopLevel
实例。