Saltar al contenido

¿Comando para hacer clic en los elementos de un widget Tkinter Treeview?

Te damos el hallazgo a este atasco, o por lo menos eso creemos. Si continuas con preguntas puedes dejarlo en el apartado de comentarios, que para nosotros será un placer ayudarte

Solución:

Si desea que suceda algo cuando el usuario haga doble clic, agregue un enlace a "". Dado que un solo clic establece la selección, en su devolución de llamada puede consultar el widget para averiguar qué está seleccionado. Por ejemplo:

import tkinter as tk
from tkinter import ttk

class App:
    def __init__(self):
        self.root = tk.Tk()
        self.tree = ttk.Treeview()
        self.tree.pack()
        for i in range(10):
            self.tree.insert("", "end", text="Item %s" % i)
        self.tree.bind("", self.OnDoubleClick)
        self.root.mainloop()

    def OnDoubleClick(self, event):
        item = self.tree.selection()[0]
        print("you clicked on", self.tree.item(item,"text"))

if __name__ == "__main__":
    app = App()

La solución anterior falla cuando se seleccionan varios elementos y el usuario usa SHIFT+CLICK (al menos en una Mac).

Aquí hay una mejor solución:

import tkinter as tk
import tkinter.ttk as ttk

class App:
    def __init__(self):
        self.root = tk.Tk()
        self.tree = ttk.Treeview()
        self.tree.pack()
        for i in range(10):
            self.tree.insert("", "end", text="Item %s" % i)
        self.tree.bind("", self.OnDoubleClick)
        self.root.mainloop()

    def OnDoubleClick(self, event):
        item = self.tree.identify('item',event.x,event.y)
        print("you clicked on", self.tree.item(item,"text"))

if __name__ == "__main__":
    app = App()

Sé que esto es antiguo, pero este código también imprimirá varios elementos seleccionados en una vista de árbol.

def on_double_click(self, event):
    item = self.tree.selection()
    for i in item:
        print("you clicked on", self.tree.item(i, "values")[0])

Reseñas y calificaciones de la guía

Tienes la posibilidad dar visibilidad a este tutorial si te ayudó.

¡Haz clic para puntuar esta entrada!
(Votos: 2 Promedio: 5)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *