Tkinter, transformer une interface texte en interface graphique

Signaler
-
Messages postés
104
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
13 décembre 2020
-
Bonjour, je voudrais transformer une interface texte en interface graphique. j'ai déjà commencé avec Tkinter, mais cela s'est vite compliqué.
Voici le code en interface texte(c'est un compte à rebours):
import time, os  
i = 10
while (i > 0):  
    i = (i -1)  
    print i  
    time.sleep(1)  
os.system("clear")

et voici ma tentative avec Tkinter:
import time, os
import Tkinter
mafenetre = Tkinter.Tk() ###creation de main window
i=10

while(i>0):
    label1 = Tkinter.Label(mafenetre, text=i, bg='red') ###label graph(creation du widget)
    label1.pack()
    i=(i-1)
    print(i)
    time.sleep(1)
    os.system("cls")
    mafenetre.mainloop()

J'utilise Python 2.7
Merci d'avance de vos réponse.

1 réponse

Messages postés
104
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
13 décembre 2020
70
Bonsoir,
Voici un exemple:
import time
import Tkinter

mafenetre = Tkinter.Tk() ###creation de main window
i=11

#Pour lire ou ecrire dans un Label il faut utiliser la methode Get ou Set
Lab_i = Tkinter.StringVar() #Affectation de type de variable TKinter(String)
label1 = Tkinter.Label(mafenetre, textvariable = Lab_i, bg='red',width = 8,) ###label graph(creation du widget)
label1.pack()
Lab_i.set(str(i)) #Ecriture dans le label

while(i>0):
i=(i-1)
Lab_i.set(i) #Ecriture
print(Lab_i.get()) #Lecture
mafenetre.update() #Forcage du rafraichissement de l'ecran, sinon
#l'ecran ne sera affiche qu'en fin de boucle
time.sleep(1)

mafenetre.mainloop() #Interception des evenements TKinter