Python Tkinter,如何在Tkinter TreeView中获取项目的子项?

时间:2019-10-04 16:09:06

标签: python tkinter treeview

如何在Tkinter TreeView中获取项目的子项目?

-Item
|-Subitem1
||-Subsubitem1  \ This two items
||-Subsubitem2  /
|-Subitem2
|-Subitem3

谢谢

1 个答案:

答案 0 :(得分:1)

命令为tree.get_children(item=None)。您可以递归调用它以遍历子节点。

import tkinter as tk
from tkinter import ttk

root = tk.Tk()
tree = ttk.Treeview(root)

a = tree.insert("", "end", text="Item",open=True)
b = tree.insert(a, "end", text="Subitem1",open=True)
tree.insert(a, "end", text="Subitem2")

for i in range(1,3):
    tree.insert(b, "end", text=f"Subsubitem{i}")

tree.pack()

def get_child():
    for item in tree.get_children():
        for subitem in tree.get_children(item):
            for subsubitem in tree.get_children(subitem):
                print (subsubitem, tree.item(subsubitem)["text"])

tk.Button(root,text="click me",command=get_child).pack()

root.mainloop()