如何从 ttk.Treeview 组件清除项目?


通常,Tkinter treeview 组件用于起草或构建数据点输入中的表格。我们甚至可以在 treeview 组件中添加项目,以便在应用程序中维护嵌套列表。如果我们想删除或清除给定 treeview 组件中的所有项目,则必须首先使用 get_children() 方法选择 treeview 组件中存在的所有项目。

一旦我们通过编程方式选择了所有 treeview 项目,我们就可以使用 delete(item) 方法删除这些项目。为了得到所有的子项,我们可以在循环中使用 delete() 方法。

示例

# Import the required libraries
from tkinter import *
from tkinter import ttk

# Create an instance of tkinter frame
win= Tk()

# Set the size of the tkinter window
win.geometry("700x350")
s = ttk.Style()
s.theme_use('clam')

# Define a function to clear all the items present in Treeview
def clear_all():
   for item in tree.get_children():
      tree.delete(item)

# Add a Treeview widget
tree= ttk.Treeview(win, column=("c1", "c2"), show= 'headings', height= 6)
tree.column("# 1",anchor=CENTER)
tree.heading("# 1", text= "ID")
tree.column("# 2", anchor= CENTER)
tree.heading("# 2", text= "FName")

# Insert the data in Treeview widget
tree.insert('', 'end',text= "1",values=('1','Honda'))
tree.insert('', 'end',text= "2",values=('2', 'Hyundai'))
tree.insert('', 'end',text= "3",values=('3', 'Tesla'))
tree.insert('', 'end',text= "4",values=('4', 'Volkswagen'))
tree.insert('', 'end',text= "5",values=('5', 'Tata'))
tree.insert('', 'end',text= "6",values=('6', 'Renault'))

tree.pack()

# Create a Button for clearing the Treeview Item
ttk.Button(win, text= "Clear", command= clear_all).pack(pady=10)

win.mainloop()

输出

当我们运行上述代码时,它将显示一个包含表格和按钮组件的窗口。

一旦我们点击按钮,它将清除 treeview 组件的所有内容。

更新日期: 2021 年 6 月 8 日

9K+ 浏览次数

开启你的 事业

完成课程并获得认证

开始
广告