Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Xóa và sửa mục trong Tkinter TreeView


Widget Treeview hiển thị dữ liệu phân cấp. Để sửa/xóa: dùng tree.selection() lấy mục được chọn, sau đó tree.item() để sửa hoặc tree.delete() để xóa.

Ví dụ minh họa

from tkinter import *
from tkinter import ttk

win = Tk()
win.geometry("700x350")

style = ttk.Style()
style.theme_use('clam')

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="Công ty")

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', 'Volkswagen'))
tree.insert('', 'end', text="5", values=('5', 'Tata Motors'))
tree.insert('', 'end', text="6", values=('6', 'Renault'))
tree.pack()

def edit():
    selected_item = tree.selection()[0]
    tree.item(selected_item, text="blub", values=("foo", "bar"))

def delete():
    selected_item = tree.selection()[0]
    tree.delete(selected_item)

ttk.Button(win, text="Sửa", command=edit).pack()
ttk.Button(win, text="Xóa", command=delete).pack()

win.mainloop()

Kết quả đầu ra

Bảng hãng xe, chọn dòng và nhấn Sửa/Xóa.

Xóa và sửa mục trong Tkinter TreeView

Chọn dòng 4 và nhấn Xóa.

Xóa và sửa mục trong Tkinter TreeView

Kết quả sau khi xóa.

Xóa và sửa mục trong Tkinter TreeView