Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để xóa các mục khỏi tiện ích ttk.Treeview?

Nói chung, Tkinter treeview widget được sử dụng để soạn thảo hoặc xây dựng bảng cho các điểm dữ liệu đã cho trong đầu vào. Chúng tôi thậm chí có thể thêm các mục trong chế độ xem dạng cây tiện ích con để duy trì một danh sách lồng nhau trong một ứng dụng. Nếu chúng tôi muốn xóa hoặc xóa tất cả các mục trong chế độ xem dạng cây nhất định tiện ích con, sau đó, trước tiên chúng ta phải chọn tất cả các mục có trong tiện ích con dạng cây bằng cách sử dụng get_children () phương pháp.

Khi chúng tôi đã chọn tất cả chế độ xem dạng cây các mục theo chương trình, sau đó chúng tôi có thể xóa các mục bằng cách sử dụng delete (item) phương pháp. Để có được tất cả trẻ em, chúng tôi có thể sử dụng xóa () phương thức bên trong một vòng lặp.

Ví dụ

# 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")
s = ttk.Style()
s.theme_use('clam')

# Define a function to clear all the items present in Treeview
def clear_all():
   for item in tree.get_children():
      tree.delete(item)

# Add a Treeview widget
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")

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

tree.pack()

# Create a Button for clearing the Treeview Item
ttk.Button(win, text= "Clear", command= clear_all).pack(pady=10)

win.mainloop()

Đầu ra

Khi chúng tôi chạy đoạn mã trên, nó sẽ hiển thị một cửa sổ chứa một bảng và một tiện ích Nút.

Làm cách nào để xóa các mục khỏi tiện ích ttk.Treeview?

Khi chúng tôi nhấp vào nút, nó sẽ xóa tất cả nội dung của tiện ích treeview.