1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| from tkinter import *
root = Tk()
root.geometry('300x200')
def choix_programme(event):
print('début choix programme')
select = lstCombo.get()
if int(select[0]) == 1 :
print('Fonction A', let_x)
elif int(select[0]) == 2 :
print('Fonction B', let_x)
else :
pass
print('fin choix programme') r
return
def sup_let_x(event) : # suppression d'éléments de let_x
print('debut sup_let_x')
sel = lbox_let_x.curselection()
lbox_let_x.delete(sel) #suppression d'un élément dans la listbox
let_x.remove(let_x[sel[0]]) # mise à jour de la liste
lbox_let_x.delete(0, END) # effacement de la listbox
for item in let_x : #réinitialisation de la liste des lettres
#elem = '[' + str(item[0]) + ',' + str(item[1]) + ']'
elem = str(item[0]) + ',' + str(item[1])
lbox_let_x.insert(END, elem)
print('fin sup_let_x', let_x)
return
#programme principal
#les titres
choix = Label(root, text = 'Choisissez la fonction').grid(row = 0, column = 1, sticky = E)
let_x = Label(root, text = 'Lettres_x').grid(row = 2, column = 1)
# les données
lst_fonction = [[1,'Fonction A'],[2,'Fonction B']]
let_x = [['m',6],['i',6],['n',4],['o',1]]
nb_x = len(let_x)
# choix des fonctions
lstCombo = ttk.Combobox(root, values=lst_fonction)
lstCombo.grid(row =1, columnspan = 2)
lstCombo.current(0)
lstCombo.bind("<<ComboboxSelected>>", choix_programme)
# affichages des listes de données
lbox_let_x = Listbox(root,width=6,height=nb_x )
lbox_let_x.grid(row = 3, column = 1)
#chargement initial de let_x
for item in let_x :
elem = str(item[0]) + ',' + str(item[1])
lbox_let_x.insert(END, elem) #End, elem signifie que l'on place l'item courant après le dernier placé
lbox_let_x.bind('<<ListboxSelect>>',sup_let_x)
root.mainloop() |
Partager