Bonjour,

Je fais mes premiers pas avec tkinter et, autant on trouve plein de tutoriels sur Python, autant on (je ?) ne trouve pas grand chose sur tkinter..

Du coup, j'ai le problème suivant :

Je lis un fichier CSV et je voudrais modifier le texte du label pour chaque valeur trouvée. Le rafraichissement du Label sera régulé par une temporisation (sleep).

Pour l'instant, seul la dernière valeur s'affiche dans le Label en toute fin de programme... mais pas les valeurs intermédiaires.

Merci par avance pour 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
from tkinter import *
import csv
import time
 
ficCSV = csv.reader(open("log\\ficCSV.csv", "r"), delimiter=';') # Lecture du fichier csv en direct
 
class liveFen(object):
    def __init__(self):
        self.root = Tk()
        self.texte = StringVar()
        self.lb1 = Label(self.root, textvariable=self.texte)
        self.lb1.grid(row =2, column =1, columnspan =3)
        Button(self.root, text ="Instruction suivante", command =self.evenSuiv).grid(row =3, column =3)        
        self.root.mainloop()
 
    def evenSuiv(self):
        for ligne in ficCSV: # Pour chaque ligne du fichier
            # Initialisation des variables
            tempsEvenement = float(ligne[0])
            numero = ligne[1]
            typeEvenement = ligne[2]
            commentaireEvenement = ligne[3]
            time.sleep(1.500) # Temps attente
            self.texte.set(commentaireEvenement)
 
def liveGraph():
    """ Affichage en direct par l'intermédiaire de la lecture d'un fichier csv
    """
    tempsEvenementPrecedent = 0.000
    f = liveFen()