在Tkinter Treeview中新创建的行中添加弹出菜单的问题

时间:2019-04-11 14:38:37

标签: python tkinter menu treeview

我在Python 3.7 / Tkinter项目中有一个树状视图。程序运行时,我可能需要根据用户输入添加一个新项目。这很好。我遇到问题的地方是尝试向新创建的行添加弹出菜单。这是一个片段:

parent_id = self.tree.insert('', 'end', user_input, text='New Entry', values='')
item = self.tree.item(parent_id)
row = self.tree.selection_set(item)
popup_menu = tkinter.Menu(self.master, tearoff=false)
popup_menu.selection = self.tree.selection_set(row)
popup_menu.add_command(command=self.myfunction, label='Do Something'

运行此命令时发生的情况是我在第三行出现错误:“菜单问题Item {'text':'New entry','image':'','values':'' ,“打开”:0,“标签”:''}找不到

我尝试了几种不同的方法来执行此操作,但是对于为什么它无法找到刚刚插入的行表示困惑。如何成功选择新插入的行(而不是查找选定的行)?我已经使用self.tree.exists(parent_id)进行了测试,并将其插入。而且,我可以直观地看到树中的行。

0 个答案:

没有答案