bonjour,

j ai un petit probleme avec tkinter.

J'ai une fenetre avec 2 boutons. Un qui fait les operations pas a pas (dans l'exemple, on rajoutte 1 a une entry.

Et un autre qui doit comme si on appuye un certain nombre de fois sur le 1er.

C'est plus simple d'essayer le code:

J'aimerai pourvoir choisir la vitesse d'execution. j'ai essayer time.sleep et after mais la fenetre se met a jour uniquement à la fin.

Comment faire pour que les changement apparaissent dans la fenetre au cours de l'execution.

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
31
32
33
34
 
# Créé par Admin, le 29/01/2017 en Python 3.4
from time import sleep
from tkinter import *
fenetre= Tk()
 
def plus():
    CO.set(str(int(CO.get())+1))
 
def decode():
    plus()
 
def Raz():
    CO.set('0')
 
def Lancer():
    while int(CO.get())<10:
        fenetre.after(1000,decode())
 
CO=StringVar()
CO.set('0')
CO_e=Entry(fenetre,textvariable=CO,width=2,font=("Helvetica", 14))
CO_e.grid(row=1,column=1,sticky=W)
# frame boutons
frame_boutons=Frame(fenetre,borderwidth=1,relief="ridge")
frame_boutons.grid(row=2,column=2)
bouton_lancer=Button(frame_boutons,text="Lancer",font=("Helvetica", 16),padx=2,pady=2,command=Lancer)
bouton_lancer.grid(row=0,column=0)
bouton_suivant=Button(frame_boutons,text="Pas à Pas",font=("Helvetica", 16),padx=2,pady=2,command=decode)
bouton_suivant.grid(row=0,column=1)
bouton_raz=Button(frame_boutons,text="RAZ",font=("Helvetica", 16),padx=2,pady=2,command=Raz)
bouton_raz.grid(row=0,column=2,)
 
fenetre.mainloop()
merci