在 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 行,然后点击“删除”按钮。
将生成以下输出 −
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP