Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ลบและแก้ไขรายการใน Tkinter TreeView


วิดเจ็ต Tkinter Treeview ใช้เพื่อแสดงข้อมูลในโครงสร้างแบบลำดับชั้น ในโครงสร้างนี้ แต่ละแถวสามารถแสดงไฟล์หรือไดเร็กทอรี แต่ละไดเร็กทอรีประกอบด้วยไฟล์หรือไดเร็กทอรีเพิ่มเติม หากเราต้องการสร้างวิดเจ็ต Treeview เราก็สามารถใช้ Treeview(parent, columns) ตัวสร้างเพื่อสร้างตาราง

รายการวิดเจ็ต Treeview สามารถแก้ไขและลบได้โดยการเลือกรายการโดยใช้ tree.selection() การทำงาน. เมื่อเลือกรายการแล้ว เราสามารถดำเนินการบางอย่างเพื่อลบหรือแก้ไขรายการได้

ตัวอย่าง

# 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 อยู่ในนั้น

ลบและแก้ไขรายการใน Tkinter TreeView

หากเราเลือกแถวใดแถวหนึ่งแล้วกดปุ่มแก้ไขหรือลบ ระบบจะดำเนินการตามที่กำหนดไว้ในโปรแกรม

เลือกแถวที่ 4 แล้วคลิกปุ่ม "ลบ"

ลบและแก้ไขรายการใน Tkinter TreeView

มันจะสร้างผลลัพธ์ต่อไปนี้ -

ลบและแก้ไขรายการใน Tkinter TreeView