在 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