如何清除ttk.Treeview小部件中的项目?
通常,Tkinter的 treeview 小部件用于为输入中的给定数据点草拟或构造表格。我们甚至可以将项添加到 treeview 小部件中,以在应用程序中保持嵌套列表。如果我们要删除或清除给定 treeview 小部件中的所有项目,则必须首先使用 get_children() 方法选中treeview中所有的项目。
一旦我们通过编程方式选择了所有 treeview 项,那么我们就可以使用 delete(item) 方法删除这些项。为了获取所有的子项,我们可以在循环中使用 delete() 方法。
阅读更多:Python 教程
示例
#导入所需的库
from tkinter import *
from tkinter import ttk
# 创建一个Tkinter框架的实例
win= Tk()
# 设置Tkinter窗口的大小
win.geometry("700x350")
s = ttk.Style()
s.theme_use('clam')
# 定义函数以清除 Treeview 中的所有项
def clear_all():
for item in tree.get_children():
tree.delete(item)
# 添加一个Treeview部件
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")
# 将数据插入Treeview小部件
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()
# 为清除Treeview项目创建按钮
ttk.Button(win, text= "清除", command= clear_all).pack(pady=10)
win.mainloop()
输出
当我们运行上面的代码时,它将显示包含表格和按钮小部件的窗口。
一旦我们单击按钮,它就会清除Treeview小部件的所有内容。
极客教程