对于初学者,我正在研究别人的代码。
在这段代码中,它打开一个初始的 tkinter 窗口,用户输入一些信息并按下一个按钮。然后另一个 tkinter 窗口打开,询问用户名和密码。用户提供信用并按下确定按钮。
除了子窗口,用户名密码窗口没有关闭之外,这一切都很好。
我已经破解了几个小时,而沮丧是我唯一的收获。
我已经能够用 destroy 关闭子窗口,但这会杀死整个应用程序。
有任何想法吗?
如果子窗口是 a tk.Toplevel
,则可以通过让ok
按钮调用destroy
方法来关闭它:
import Tkinter as tk
class Child(object):
def __init__(self, master=None):
self.master = master
window = tk.Toplevel(master)
close_button = tk.Button(
window, text='OK/Close', command=window.destroy)
close_button.pack(side=tk.LEFT, padx=5, pady=5)
class MainApp(object):
def __init__(self, master=None):
self.master = master
close_button = tk.Button(master, text='Child window',
command=Child)
close_button.pack(side=tk.BOTTOM, padx=5, pady=5)
root = tk.Tk()
app = MainApp(root)
root.mainloop()
我不确定您何时要关闭窗口,但如果根本不需要该窗口,您可以使用Window_name.withdraw()