- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to delete all children's elements using Python's Tkinter?
Frames are very useful in a Tkinter application. If we define a Frame in an application, it means we have the privilege to add a group of widgets inside it. However, all these widgets are called Children of that particular Frame.
Let us suppose that we want to remove all the children widgets defined in a frame. Then, first we have to get the focus on children using the winfo_children() method. Once we get the focus, we can delete all the existing children using destroy() method.
Example
#Import the Tkinter Library from tkinter import * #Create an instance of Tkinter Frame win = Tk() #Set the geometry of window win.geometry("700x350") #Initialize a Frame frame = Frame(win) def clear_all(): for item in frame.winfo_children(): item.destroy() button.config(state= "disabled") #Define a ListBox widget listbox = Listbox(frame, height=10, width= 15, bg= 'grey', activestyle= 'dotbox',font='aerial') listbox.insert(1,"Go") listbox.insert(1,"Java") listbox.insert(1,"Python") listbox.insert(1,"C++") listbox.insert(1,"Ruby") listbox.pack() label = Label(win, text= "Top 5 Programming Languages", font= ('Helvetica 15 bold')) label.pack(pady= 20) frame.pack() #Create a button to remove all the children in the frame button = Button(win, text= "Clear All", font= ('Helvetica 11'), command= clear_all) button.pack() win.mainloop()
Output
If we execute the above code, it will display a window with a list of items in a list box and a button.
When we click the "Clear All" button, it will remove all the children lying inside the frame object.
Advertisements