0
이 게시물 python ttk treeview sort numbers과 비슷한 결과를 얻을 수있는 방법이 있습니까? 가장 좋은 방법은 항목을 삽입 한 직후입니다.삽입 후 자동으로 ttk 트 리뷰의 항목 정렬
이 게시물 python ttk treeview sort numbers과 비슷한 결과를 얻을 수있는 방법이 있습니까? 가장 좋은 방법은 항목을 삽입 한 직후입니다.삽입 후 자동으로 ttk 트 리뷰의 항목 정렬
각 새 항목 삽입 후 Treeview
을 정렬하려면 코드에서 올바른 위치의 정렬 함수에 대한 명시 적 호출을 추가하기 만하면됩니다.
예제 코드 :
import tkinter as tk
from tkinter import ttk
counter = 0
numbers = ['1', '10', '11', '2', '3', '4', '24', '12', '5']
def sort_treeview():
content = [(tv.set(child, column), child)
for child in tv.get_children('')]
try:
content.sort(key=lambda t: int(t[0]))
except:
content.sort()
for index, (val, child) in enumerate(content):
tv.move(child, '', index)
def add_item():
global counter
if counter < 8:
tv.insert('', 'end', values=numbers[counter])
counter += 1
# Sort the treeview after the new item was inserted
# -------------------------------------------------
sort_treeview()
root = tk.Tk()
column = 'number'
tv = ttk.Treeview(root, columns=column, show='headings')
tv.pack()
button = tk.Button(root, text='Add entry', command=add_item)
button.pack()
root.mainloop()