Python tkinter treeview从选定项返回iid

Python tkinter treeview从选定项返回iid,python,tkinter,tree,treeview,Python,Tkinter,Tree,Treeview,在Python tkinter treeview中,我试图根据所选treeview项的iid显示某些内容,它发生在选择事件(鼠标单击)上,但我无法实现这一点: def tree_click_event (event): iid = treedisplay.identify(event.x,event.y) treedisplay = ttk.Treeview(root,selectmode='browse') treedisplay.bind('<<TreeviewSele

在Python tkinter treeview中,我试图根据所选treeview项的iid显示某些内容,它发生在选择事件(鼠标单击)上,但我无法实现这一点:

def tree_click_event (event):
    iid = treedisplay.identify(event.x,event.y)

treedisplay = ttk.Treeview(root,selectmode='browse')
treedisplay.bind('<<TreeviewSelect>>', tree_click_event)
treedisplay.pack(side='top', fill='both', expand=1)
这可以简化为创建树,将其打包到tkinter窗口中,寻找熟悉此模块的人,以确切了解我做错了什么

感谢您的示例@BryanOakley,它可以获得项目的文本。但是没有办法让下面的代码正常工作吗

import tkinter as tk
from tkinter import ttk

class App:
    def __init__(self):
        self.root = tk.Tk()
        self.tree = ttk.Treeview()
        self.tree.pack(side="top", fill="both")
        self.tree.bind("<<TreeviewSelect>>", self.tree_click_event)

        for i in range(10):
            self.tree.insert("", "end", text="Item %s" % i)

        self.root.mainloop()

    def tree_click_event(self, event):
        iid = self.tree.identify(event.x,event.y)
        print (iid)

if __name__ == "__main__":
    app = App()
将tkinter作为tk导入
从tkinter导入ttk
类应用程序:
定义初始化(自):
self.root=tk.tk()
self.tree=ttk.Treeview()
self.tree.pack(side=“top”,fill=“both”)
self.tree.bind(“,self.tree\u click\u事件)
对于范围(10)内的i:
self.tree.insert(“,“end”,text=“项目%s”%i)
self.root.mainloop()
def树单击事件(自身,事件):
iid=自我树识别(事件x、事件y)
打印(iid)
如果名称=“\uuuuu main\uuuuuuuu”:
app=app()
需要三个参数,您只需传递两个参数。第一个参数表示要标识的组件,并且必须是以下组件之一:区域、项、列、行或元素

例如:

iid = treedisplay.identify("item", event.x,event.y)
注意:虽然上面的语法是正确的,但它不会像你认为的那样。在
事件中,您将无法获得x和y坐标。这是因为键盘和鼠标事件都可以触发事件。
identify
方法应用于鼠标事件的显式绑定,并且主要仅用于低级绑定

如果需要所选项目,请使用
选择
方法,该方法将返回项目ID列表:

for item in treedisplay.selection():
    item_text = self.tree.item(item,"text")
需要三个参数,您只传递了两个。第一个参数表示要标识的组件,并且必须是以下组件之一:区域、项、列、行或元素

例如:

iid = treedisplay.identify("item", event.x,event.y)
注意:虽然上面的语法是正确的,但它不会像你认为的那样。在
事件中,您将无法获得x和y坐标。这是因为键盘和鼠标事件都可以触发事件。
identify
方法应用于鼠标事件的显式绑定,并且主要仅用于低级绑定

如果需要所选项目,请使用
选择
方法,该方法将返回项目ID列表:

for item in treedisplay.selection():
    item_text = self.tree.item(item,"text")
我在这里收到了答案:?我在这里收到了答案:?