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

วิธีล้างรายการทั้งหมดใน ttk.Treeview Widget

Treeview widget ใช้แสดงข้อมูลในรูปตาราง หากต้องการลบข้อมูลทั้งหมด ให้ใช้เมธอด get_children() เพื่อดึงรายการทุกอย่าง แล้ววนลูปลบด้วย delete(item)

ตัวอย่างโค้ด

from tkinter import *
from tkinter import ttk

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

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

def clear_all():
    for item in tree.get_children():
        tree.delete(item)

tree = ttk.Treeview(win, column=("c1", "c2"), show='headings', height=6)
tree.column("# 1", anchor=CENTER)
tree.heading("# 1", text="ID")
tree.column("# 2", anchor=CENTER)
tree.heading("# 2", text="FName")

# เพิ่มข้อมูลตัวอย่าง
data = [('1', 'Honda'), ('2', 'Hyundai'), ('3', 'Tesla'),
        ('4', 'Volkswagen'), ('5', 'Tata'), ('6', 'Renault')]
for i, (id_val, name) in enumerate(data, 1):
    tree.insert('', 'end', text=str(i), values=(id_val, name))

tree.pack()

ttk.Button(win, text="Clear", command=clear_all).pack(pady=10)

win.mainloop()

ผลลัพธ์

กดปุ่ม Clear จะล้างข้อมูลใน Treeview ทั้งหมด

วิธีล้างรายการทั้งหมดใน ttk.Treeview Widget