在 Tkinter TreeView 中删除和编辑项目
Tkinter Treeview 组件用于以层次结构显示数据。在此结构中,每一行可以表示文件或目录。每个目录包含文件或其他目录。如果想要创建一个 Treeview 组件,可以使用 Treeview(parent, columns) 构造函数来构建表。
可以使用 tree.selection() 函数选择项目后编辑和删除 Treeview 组件项目。选择某个项目后,可以执行特定操作来删除或编辑该项目。
示例
# 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") # Create an instance of Style widget style = ttk.Style() style.theme_use('clam') # Add a Treeview widget tree = ttk.Treeview(win, column=("c1", "c2"), show='headings', height=8) tree.column("# 1", anchor=CENTER) tree.heading("# 1", text="ID") tree.column("# 2", anchor=CENTER) tree.heading("# 2", text="Company") # 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', 'Wolkswagon')) tree.insert('', 'end', text="5", values=('5', 'Tata Motors')) tree.insert('', 'end', text="6", values=('6', 'Renault')) tree.pack() def edit(): # Get selected item to Edit selected_item = tree.selection()[0] tree.item(selected_item, text="blub", values=("foo", "bar")) def delete(): # Get selected item to Delete selected_item = tree.selection()[0] tree.delete(selected_item) # Add Buttons to Edit and Delete the Treeview items edit_btn = ttk.Button(win, text="Edit", command=edit) edit_btn.pack() del_btn = ttk.Button(win, text="Delete", command=delete) del_btn.pack() win.mainloop()
输出
执行以上代码会显示一个窗口,其中包含一个汽车型号和 ID 列表。
如果选择特定行并按编辑或删除按钮,那么它会执行程序中定义的操作。
选择第 4 行,然后点击“删除”按钮。
将生成以下输出 −
广告