如何在不关闭Tkinter整个应用程序的情况下关闭特定窗口?

时间:2020-10-31 05:34:45

标签: python-3.x tkinter tkinter-entry

我正在使用tkinter创建一个Tic-Tac-Toe程序,在该程序中,我想使用输入的用户名和要在另一个窗口中给出的下一个名字,但在此之前我想自动关闭上一个窗口。

我使用了一个名为root(也mainloop)的公共变量来显示所有窗口。一旦销毁root,整个程序就会停止。我是否应该使用tk.Tk()命名一个单独的变量以继续并在其他窗口中使用它?我就是听不懂。

谁能帮我...

1 个答案:

答案 0 :(得分:1)

是的,销毁根目录将关闭整个应用程序。
如果要在保持应用程序运行的同时关闭窗口,则可以使用tk.Toplevel来打开一个窗口,并在继续其他操作的同时将其关闭。

也许是这样的:

import tkinter as tk


def popup():
    p = tk.Toplevel(root)
    p.title('popup')
    tk.Label(p, text='I will self destroy in 3 seconds').pack()
    p.after(3000, p.destroy)


root = tk.Tk()
btn = tk.Button(root, text='pop a new window', command=popup)
btn.pack()

root.mainloop()