Python 任何ttk treeview行的不同tkinter绑定

Python 任何ttk treeview行的不同tkinter绑定,python,tkinter,treeview,bind,ttk,Python,Tkinter,Treeview,Bind,Ttk,我正在编写一个简单的脚本,创建一个ttk treeview(充当一个表),当您双击它时,它会打开一个文件(路径保存在字典中)。通过此方法可以双击打开: t.bind("<Double-1>", lambda f=nt[x]["URIallegato"]: os.startfile(str(f))) 谢谢 通常的方法是在treeview上绑定一个绑定,然后双击。单击的默认绑定将选择该项目,在双击绑定中,您可以要求树状视图查看所选项目 如果将值与treeview项关联,则可以获取它们,

我正在编写一个简单的脚本,创建一个ttk treeview(充当一个表),当您双击它时,它会打开一个文件(路径保存在字典中)。通过此方法可以双击打开:

t.bind("<Double-1>", lambda f=nt[x]["URIallegato"]: os.startfile(str(f)))

谢谢

通常的方法是在treeview上绑定一个绑定,然后双击。单击的默认绑定将选择该项目,在双击绑定中,您可以要求树状视图查看所选项目

如果将值与treeview项关联,则可以获取它们,这样就不必将它们存储在字典中

下面是一个例子:

import tkinter as tk
from tkinter import ttk

def on_double_click(event):
    item_id = event.widget.focus()
    item = event.widget.item(item_id)
    values = item['values']
    url = values[0]
    print("the url is:", url)

root = tk.Tk()
t=ttk.Treeview(root)
t.pack(fill="both", expand=True)

t.bind("<Double-Button-1>", on_double_click)

for x in range(10):
    url = "http://example.com/%d" % x
    text = "item %d" % x
    t.insert("", x,  text=text, values=[url])

root.mainloop()
将tkinter作为tk导入
从tkinter导入ttk
双击时的def(事件):
item_id=event.widget.focus()
item=event.widget.item(item\u id)
值=项目[“值”]
url=值[0]
打印(“url为:”,url)
root=tk.tk()
t=ttk.Treeview(根)
t、 打包(fill=“两者”,expand=True)
t、 绑定(“,双击时)
对于范围(10)内的x:
url=”http://example.com/%d%x
text=“项目%d”%x
t、 插入(“”,x,text=text,value=[url])
root.mainloop()

您正在覆盖树视图的绑定方法
t
,我在您的最后一个问题中提供了答案…可能是
import tkinter as tk
from tkinter import ttk

def on_double_click(event):
    item_id = event.widget.focus()
    item = event.widget.item(item_id)
    values = item['values']
    url = values[0]
    print("the url is:", url)

root = tk.Tk()
t=ttk.Treeview(root)
t.pack(fill="both", expand=True)

t.bind("<Double-Button-1>", on_double_click)

for x in range(10):
    url = "http://example.com/%d" % x
    text = "item %d" % x
    t.insert("", x,  text=text, values=[url])

root.mainloop()