Tkinter treeview come menù

di Anonimizzato27526 il
3 risposte
Salve a tutti.
Vorrei sapere se è possibile usare gli item di un treeview come se fossero le voci di un menù, cioè associare ad ogni item un evento particolare.
In Delphi è possibile fare in questo modo:
if (TreeView1.Selected.SelectedIndex = 1) then
memo1.Lines.Add('alfa');
if (TreeView1.Selected.SelectedIndex = 2) then
memo1.Lines.Add('alfa2');
In python come devo fare.
Grazie

3 Risposte

  • Salve.
    Ho scritto questo codice che ovviamente non funziona in quanto la funzione cambia viene eseguita quando faccio doppio click sul treeview. io invece vorrei che la

    suddetta funzione venga eseguita quando faccio doppio click su uno specifico item.

    Questo è il codice:

    from tkinter import *

    from tkinter import ttk

    window = Tk()

    window.geometry("800x800")

    treeview = ttk.Treeview(window)

    treeview.pack()


    def cambia(evento) :
    window.configure(background="yellow")


    treeview.config(height = 10)

    treeview.heading('#0',text = 'Prova')

    treeview.insert('','0','item1',text = 'Primo Item')

    treeview.insert('','1','item2',text = 'Secondo Item' )

    treeview.insert('','end','item3',text = 'Terzo Item', )

    treeview.insert('item1','end',text = 'alfa')

    treeview.bind("<Double-1>", cambia)

    Grazie spero che qualcuno possa aiutarmi.
  • 1 - Scrivi il codice nel tag code
    2 - fare from nome_modulo import * te lo sconsiglio
    import tkinter as tk
    from tkinter import ttk
    
    def cambia(evento):
        print(treeview.identify_row(evento.y))
    
    
    window = tk.Tk()
    window.geometry("800x800")
    
    treeview = ttk.Treeview(window)
    treeview.config(height = 10)
    treeview.heading('#0',text = 'Prova')
    treeview.insert('','0','item1',text = 'Primo Item')
    treeview.insert('','1','item2',text = 'Secondo Item' )
    treeview.insert('','end','item3',text = 'Terzo Item', )
    treeview.insert('item1','end','item4',text = 'alfa')
    treeview.bind("<Double-1>", cambia)
    
    treeview.pack()
  • Ok grazie ci sono riuscito
Devi accedere o registrarti per scrivere nel forum
3 risposte