Bonjour,
Je souhaite créer une interface graphique qui afficherait des données sauvegardées sur un fichier .txt
Le problème est que le nombre de dossier est inconnu, je dois donc faire tout ça en dynamique. J'ai réussi à créer le nombre de checkbutton en fonction du nombre de dossiers présents mais quand je lance l'appelle pour sélectionner un fichier j'ai un problème par rapport à la variable du bouton. Cela ne fonctionne que si je mets une boucle for pour checker les états de chaque bouton, mais dans ce cas je relance à chaque fois tout le système quand plusieurs boutons sont activés.

Comment puis-je faire pour que le programme ne considère que le boutons qui a été enclenché en dernier tout en conservant les données récupérées du premier appuis?
Merci de votre aide!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
import numpy as np
import matplotlib.pyplot as plt
from tkinter import *
from tkinter.messagebox import *
from tkinter.filedialog import *
import os
import glob
from os import path
test = os.listdir("Data2")
print(test)
 
root = Tk()
root.title("Post-processing")
root.geometry("1300x900")
 
def testfile():
 
    global filename
    if valeur[i].get() ==1:
        filename = askopenfilename(initialdir = path.join("Data2",test[i],"METADATA"),title="Ouvrir votre document",filetypes=[('txt files','.txt')])
        Label(root, text = filename).pack()
 
valeur = [IntVar(master = root) for i in range(len(test))]
for i in range(len(test)):
    Checkbutton(root, text = test[i], variable = valeur[i], onvalue = 1, offvalue = 0, command = testfile).pack(side=LEFT)
 
 
 
 
root.mainloop()