У меня есть кадр, в котором я пытаюсь удалить все дочерние виджеты, кроме одного, в частности.Я знаком с удалением ВСЕХ детей с:
for child in frame.winfo_children():
child.destroy()
. Я даже могу предотвратить удаление определенного ТИПА виджета (скажем, кнопки) с помощью:
for child in frame.winfo_children():
if child.winfo_class() != 'Button':
child.destroy()
Что я хочудолжен иметь возможность удалить все дочерние элементы всех типов, кроме одного определенного виджета.Вот полнофункциональный пример ниже.Я хочу уничтожить все, КРОМЕ keep_me
.
import tkinter as tk
root = tk.Tk()
frame = tk.Frame(root)
frame.grid(column=0, row=0)
keep_me = tk.Button(frame, text='Keep me')
keep_me.grid(column=0, row=0)
destroy_me = tk.Button(frame, text='Expendable')
destroy_me.grid(column=0, row=1)
for child in frame.winfo_children():
# Here's where I need help. Don't know how to single-out 'keep_me'
child.destroy()