我稍后尝试迭代树视图内的数据。然后我希望能够解决它。
from tkinter import *
from tkinter.ttk import *
import pickle
root = Tk()
def treeData(event):
children = tree.get_children()
print(children)
entry = StringVar()
a = Entry(root, textvariable=entry)
a.grid(column=0,row=0)
a.bind("<Key>", function)
file_data = []
file = open('data.dat', 'rb')
while True:
try:
file_data.append(pickle.load(file))
except EOFError:
break
file.close()
column_names = ("Column 1", "Column 2")
tree = Treeview(root, columns=column_names)
tree['show'] = 'headings'
for x in file_data:
a = tree.insert('', 'end', values=x)
for col in column_names:
tree.heading(col, text=col)
tree.grid(column=0, row=1)
在函数中,当我 print(children) 时,称为“treeData”,它输出一个与此类似的列表 - ('I001', 'I002', 'I003', 'I004')
我希望有人知道如何将这些数据转换为 Treeview 行中实际显示的内容?
Thanks,
你所问的问题已记录在官方 tkinter 中Treeview 小部件的文档 https://docs.python.org/dev/library/tkinter.ttk.html#ttk-treeview.
The 获取孩子 https://docs.python.org/dev/library/tkinter.ttk.html#tkinter.ttk.Treeview.get_children方法返回一个项目 ID 列表,每个子项目一个。这item https://docs.python.org/dev/library/tkinter.ttk.html#tkinter.ttk.Treeview.item树视图的方法将返回给定项目的数据字典。因此,您可以使用如下方式迭代这些值:
for child in tree.get_children():
print(tree.item(child)["values"])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)