在 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 行,然後點選“刪除”按鈕。
將生成以下輸出 −
廣告