import tkinter as tk column=[['', '', 'Vh inf', 'Vh inf avec insert surmoule', 'Vh inf avec joint', 'Vh inf avec insert surmoule visible']] # un exemple de liste que je peux utiliser def checkbox_get(): global checklist #Globalise la liste checklist pour ne pas la mettre en argument pour le bouton checklist=[] for i in range(2,len(column[0])): print(globals()['var%s' % i].get()) checklist.append(globals()['var%s' % i].get()) #récupere les variable 0 ou 1 si la case est coché de toutes les variables fenetre.destroy() #ferme la fenetre fenetre_principale() return checklist def main(): #Le main pour le VH inf pour l'instant qui permettera de choisir dans la liste. fenetre_principale.destroy() global fenetre,column #Permet de globaliser la fenetre pour l'utiliser dans la fonction checkbox_get sans la mettre en argument #sheet_function(i) #Instore la lecture dans la feuille 'i' #lire_colone(sheet, column,i) #lis les valeurs de la colonne 'i' x=len(column[0]) fenetre = tk.Tk() #Initialise la fenetre Frame1 = tk.Frame(fenetre) #Instore 2 frame une pour la scrollbar et l'autre pour le bouton Lancer (get des value) Frame1.pack(side="left") Frame2 = tk.Frame(fenetre) Frame2.pack(side="right") vsb=tk.Scrollbar(Frame1,orient="vertical") #La scrollbar text=tk.Text(Frame1,width=40, height=20, yscrollcommand=vsb.set) #Pour que les textes suivent la ScrollBar vsb.config(command=text.yview) vsb.pack(side="right", fill="y") text.pack(side="left", fill="both", expand=True) for i in range(2,len(column[0])): #création des CheckButtons dans la ScrollBat globals()['var%s' % i]=tk.IntVar() #créé une variable pour chaques i, ex : var2,var3,var4 ect ... bg = 'grey' if i % 2 == 0: bg='white' cb=tk.Checkbutton(Frame1,text=column[0][i],bg=bg,variable=globals()['var%s' % i]) text.window_create("end", window=cb) text.insert("end", "\n") #Pour avoir une CheckButton par ligne '\n' tk.Button(Frame2, text="Valider", command=checkbox_get).pack() #Bouton avec la commande de get des checkbuttons fenetre.mainloop() def fenetre_principale(): global fenetre_principale fenetre_principale=tk.Tk() tk.Button(fenetre_principale, text="Vh inf", command=main).pack() fenetre_principale.mainloop()