Tkinter 按钮命令在程序为 运行 时激活

Tkinter button command activates when program is run

在这里找到了一个类似的帖子:Tkinter button command activates upon running program?

但是我不能完全理解这个相对较新的答案。

def Destroy(var):
    var.destroy()

我也想调用这个函数

exit_button = tk.Button(master, text = "Exit", command = Destroy(master))

但是当我 运行 程序时,它立即关闭并显示错误消息:

_tkinter.TclError: can't invoke "button" command:  application has been destroyed

我想要的是程序在按下按钮后退出,我将使用相同的函数来销毁其他小部件等,因此它需要是一个函数。

如有需要,将进一步说明。

当您定义 exit_button 时,您实际上是在调用 Destroy,因此您需要传递函数或 lambda 以防止传递函数调用。

exit_button = tk.Button(master, text = "Exit", command = lambda: Destroy(master))