Если вы хотите, чтобы действие происходило при уничтожении определенного виджета, вы можете переопределить метод destroy (). Смотрите следующий пример:
class MyButton(Tkinter.Button):
def destroy(self):
print "Yo!"
Tkinter.Button.destroy(self)
root = Tkinter.Tk()
f = Tkinter.Frame(root)
b1 = MyButton(f, text="Do nothing")
b1.pack()
f.pack()
b2 = Tkinter.Button(root, text="f.destroy", command=f.destroy)
b2.pack()
root.mainloop()
Когда кнопка «b2» нажата, рамка «f» уничтожается, с дочерними «b1» и «Yo!» печатается.