A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.geeksforgeeks.org/python/destroy-method-in-tkinter-python/ below:

destroy() method in Tkinter | Python

destroy() method in Tkinter | Python

Last Updated : 11 Jul, 2025

Tkinter

supports a variety of methods to perform various tasks. It also offers some universal method.

destroy()

is a universal widget method i.e we can use this method with any of the available widgets as well as with the main tkinter window.

Syntax:
widget_object = Widget(parent, command = widget_class_object.destroy)

This method can be used with

after()

method.

Code #1:

destroy() method passed as command

Python3 1==
# importing only those functions
# which are needed
from tkinter import * 
from tkinter.ttk import *

# creating tkinter window
root = Tk()

# Creating button. In this destroy method is passed
# as command, so as soon as button 1 is pressed root
# window will be destroyed
btn1 = Button(root, text ="Button 1", command = root.destroy)
btn1.pack(pady = 10)

# Creating button. In this destroy method is passed
# as command, so as soon as button 2 is pressed
# button 1 will be destroyed
btn2 = Button(root, text ="Button 2", command = btn1.destroy)
btn2.pack(pady = 10)

# infinite loop
mainloop()
Output:

As you may observe, in above code that the command that is passed in button-2 is to destroy button-1 so as soon as you press button-2, button-2 will get destroyed.

Code #2:

destroy() method with after() method

Python3 1==
# importing only those functions
# which are needed
from tkinter import * 
from tkinter.ttk import *

# creating tkinter window
root = Tk()

# Creating button. In this destroy method is passed
# as command, so as soon as button 1 is pressed root
# window will be destroyed
btn1 = Button(root, text ="Button 1")
btn1.pack(pady = 10)

# Creating button. In this destroy method is passed
# as command, so as soon as button 2 is pressed
# button 1 will be destroyed
btn2 = Button(root, text ="Button 2")
btn2.pack(pady = 10)

# after method destroying button-1
# and button-2 after certain time
btn1.after(3000, btn1.destroy)
btn2.after(6000, btn2.destroy)

# infinite loop
mainloop()
Output:

From output you may see that both the widgets are destroyed after a certain time limit and only root window will be left empty.

Note:

There is another method available

quit()

which do not destroy widgets but it exits the tcl/tk interpreter i.e it stops the

mainloop()

.



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4