⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ liste des méthodes
tkinter.after_cancel ( )
⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ liste des méthodes
tkinter.after_cancel ( )
DESCRIPTION.
Annule l'appel d'une fonction faite par la méthode tkinter.after ( ), si la période d'attente n'a pas encore été atteinte.
SYNTAXE.
widget.after_cancel ( identifiant )
widget ⇨ controles quelconques de l'interface [ OBLIGATOIRE ]
.after_cancel ( ) ⇨ appel de la méthode [ OBLIGATOIRE ]
identifiant ⇨ identifiant de l'appel à annuler [ OBLIGATOIRE ]
REMARQUES.
identifiant est un str ( ) désignant l'objet créé lors de l'appel d'une méthode tkinter.after ( ). Il peut être connu, par exemple, par : identifiant = widget.after ( attente , fonction ). identifiant a la forme : "after#x", où x est le nombre d'appel de la méthode tkinter.after ( ).
identifiant doit pouvoir être retourné en dehors de la fonction qui l'a créé, afin de pouvoir être l'utilisé dans un, ou des autres blocs du script. Sinon la valeur de identifiant sera détruite à la sortie de la fonction génératrice (variable locale), et ne pourra pas être appelé par un tkinter.after_cancel ( ) situé dans un autre bloc. Il faut donc mémoriser sa valeur dans : une variable globale (global), comme élément dans une list ( ), un dict ( ) ou tout autre objet pouvant accueillir cette valeur, et définit dans le bloc principal du programme.
Par convention, on utilise la fenêtre créée avec tkinter.Tk ( ) pour l'utilisation de cette méthode.
EXEMPLE.
import tkinter
DCT_Donnees = { "ecoule" : 0 , "identifiant" : None }
def FNC_Chronometre ( ) :
DCT_Donnees [ "ecoule" ] = DCT_Donnees [ "ecoule" ] + 1
LAB_Duree [ "text" ] = f'Chrono :\n{ DCT_Donnees [ "ecoule" ] / 10 } seconde(s).'
DCT_Donnees [ "identifiant" ] = TKI_Principal.after ( 100 , FNC_Chronometre )
def FNC_Pause ( ) :
if BUT_Pause [ "text" ] == "Pause" :
BUT_Pause [ "text" ] = "Reprise"
TKI_Principal.after_cancel ( DCT_Donnees [ "identifiant" ] )
LAB_Duree [ "text" ] = f'Chrono mis en pause à :\n{ DCT_Donnees [ "ecoule" ] / 10 } seconde(s) ...'
else :
BUT_Pause [ "text" ] = "Pause"
FNC_Chronometre ( )
TKI_Principal = tkinter.Tk ( )
BUT_Quitter = tkinter.Button ( TKI_Principal , text = "Quitter" , command = TKI_Principal.destroy )
BUT_Pause = tkinter.Button ( TKI_Principal , text = "Pause" , command = FNC_Pause )
LAB_Duree = tkinter.Label ( TKI_Principal )
LAB_Duree.pack ( )
BUT_Pause.pack ( )
BUT_Quitter.pack ( )
FNC_Chronometre ( )
TKI_Principal.mainloop ( )
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de