Закрыть окно tkinter Toplevel - PullRequest
0 голосов
/ 09 мая 2019

Как закрыть окно tkinter Toplevel после нажатия кнопки? Я уже связал команду с кнопкой, поэтому не могу уничтожить окно.

В моем классе более одного Toplevel

1 Ответ

0 голосов
/ 09 мая 2019

Если ваша кнопка верхнего окна должна что-то сделать, то выйдите, вы можете позвонить top.destroy после выполнения вещи:

Может быть что-то вроде этого:

import tkinter as tk

def do_that_and_close(top):
    print('doing that')
    top.destroy()

def launch_top():
    top = tk.Toplevel(root)
    lbl = tk.Label(top, text='this is top')
    lbl.pack()    
    btn = tk.Button(top, text='do this and quit', command=lambda: do_that_and_close(top))
    btn.pack()

root = tk.Tk()
lbl = tk.Label(root, text='this is root')
lbl.pack()
root_btn = tk.Button(root, text='launch top', command=launch_top)
root_btn.pack()
quit_btn = tk.Button(root, text='quit', command=root.destroy)
quit_btn.pack()

root.mainloop()
...