我正在编写一个程序来解码can总线错误信息。这些信息被准确地读入字典,但我在树状视图中显示它们时遇到了困难。我读过insert方法并查找了无数的示例,但是字典和treeviews的混合使用使我感到困惑。这是一个小测试程序,我在insert语句中做错了什么?在
from tkinter import *
from collections import OrderedDict
from tkinter import filedialog, ttk
GuiWindow = Tk()
TestDict = OrderedDict()
TestDict["MsgID"] = 1
TestDict["OtherData"] = 2
Errortree = ttk.Treeview(
GuiWindow,
columns=('Message ID', 'Other Data'))
Errortree.heading('#0', text='Message ID')
Errortree.heading('#1', text='Other Data')
Errortree.column('#0', stretch=YES)
Errortree.column('#1', stretch=YES)
treeview = Errortree
def TreeInsert():
print(TestDict)
Errortree.insert("", 'end', TestDict['MsgID'], TestDict['OtherData'])
scanvar = BooleanVar()
scanbtn = Checkbutton(
GuiWindow,
text="scan",
variable=scanvar,
command=TreeInsert,
indicatoron=0)
Errortree.grid(row=0, columnspan=5, sticky='nsew')
scanbtn.grid(row=1, column=0)
GuiWindow.geometry('{}x{}'.format(400, 300))
GuiWindow.mainloop()
我知道我有一个双重导入,但这是为了让pylint离开我的背部,以验证的例子。在
替换这部分代码
用这个
^{pr2}$您需要在
treeview
中插入作为tuple
的数据,所以我将您的dic
值转换为tuple
完整代码
相关问题 更多 >
编程相关推荐