我有一个带有一些数据行的ttk.Treeview小部件。如何将焦点设置为并选择(突出显示)指定的项目?
tree.focus_set()
什么也没做
tree.selection_set(0)
抱怨:找不到项目0,尽管小部件明显填充了多于零的项目。尝试第1项并不是更好。
编辑:选择一个项目,找到它的id,然后使用tree.selection_set(id)。 tree.focus(id)和tree.focus_set(id)似乎都没有做任何事情。
当我想解决完全相同的问题时遇到这个问题。
发现这个:
selectmode
突出了该项目
"browse"
或tree.selection_set(item)
选择该项目
获取要突出显示/选择的树视图项的ID
tree.focus(item)
要突出显示该项目,请同时使用tree.focus_set(item)
和child_id = tree.get_children()[-1] # for instance the last element in tuple
focus()
使用tree.selection_add(item_iid)
tree.selection_set(0)不起作用的原因是因为0不是项iid,它是你所指的索引,Treeview期待一个iid。
selection_set(item_id)