Tkinter treeview come menù

di il
3 risposte

Tkinter treeview come menù

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

  • Re: Tkinter treeview come menù

    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.
  • Re: Tkinter treeview come menù

    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()
  • Re: Tkinter treeview come menù

    Ok grazie ci sono riuscito
Devi accedere o registrarti per scrivere nel forum
3 risposte