⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ liste des méthodes
tkinter.event_delete ( )
⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ liste des méthodes
tkinter.event_delete ( )
DESCRIPTION.
Stimule l'exécution d'un événement réel ou virtuel.
SYNTAXE.
widget.event_generate ( evenement , attribut1 = valeur , ... , attributn = valeur )
widget ⇨ controle quelconque de l'interface [ OBLIGATOIRE ]
.event_generate ( ) ⇨ appel de la méthode [ OBLIGATOIRE ]
evenement ⇨ nom de l'événement [ OBLIGATOIRE ]
attribut = valeur ⇨ attribut à modifier avec sa nouvelle valeur [ optionnel ]
REMARQUES.
evenement doit être :
- un événement réel. Voir le gestionnaire d'événements pour connaitre les événements réels, ou ;
- un événement virtuel, créé avec la méthode tkinter.event_add ( ).
widget.event_generate ( evenement ) déclenche le même événement que celui déclenché par widget.bind ( evenement , fonction ), et en tenant compte des priorités qui sont définit avec widget.bindtags ( ordre ), c'est à dire que widget doit avoir la même valeur dans les 3 appels des méthodes.
Quand l'application rencontre widget.event_generate ( evenement ), il invoque la méthode fonction de widget.bind ( evenement , fonction ) si elle existe. Comme evenement ne s'est pas concrètement réalisé, l'objet event généré par la classe tkinter.Event ( ) est transmis avec des valeurs d'attribut par défaut. option permet de modifier ces valeurs par défaut, ou d'en ajouter si besoin, pour que la fonction de destination puisse agir selon les besoins du programme.
LISTE DES ATTRIBUTS DE EVENT_GENERATE.
when = quand
quand détermine quand l'événement sera traité. quand ne peut prendre que l'une des valeurs suivantes : -
- "now", ou si l'option when est absente, l'événement sera traité immédiatement, avant le retour de la commande ;
- "tail", l'événement est placé en dernier dans la file d'attente des événements ;
- "head", l'événement est placé en premier dans la file d'attente des événements ;
- "mark", l'événement est placé au début de la file d'attente des événements, mais à la suite de tous les événements déjà mis en file d'attente avec when = "mark". Cela permet de générer une série d'événements qui doivent être traités dans l'ordre mais au début de la file d'attente.
above = fenetre (associé à "<Configure>")
fenetre doit être un nom de fenêtre, ou un identifiant de fenêtre. il modifie la valeur de l'attribut above. Correspond à la substitution %a pour les scripts de liaison.
borderwidth = pixels (associé à "<Configure>")
pixels est un int ( ). Il modifie la valeur de l'attribut border_width. Correspond à la substitution %B pour les scripts de liaison.
button = numero (associé à "<ButtonPress>" et "<ButtonRelease>")
numero est un int ( ). Il modifie de l'attribut num. Correspond à la substitution %b pour les scripts de liaison.
count = fois (associé à "<Expose>")
fois est un int ( ). Il modifie la valeur de l'attribut count. Correspond à la substitution %c pour les scripts de liaison.
data = valeur (associé aux événements virtuels)
valeur est n'importe quel str ( ). Il modifie la valeur de l'attribut user_data. Correspond à la substitution %d pour les événements virtuels dans les scripts de liaison..
delta = amplitude (associé à "<MouseWheel>")
amplitude est un int ( ). amplitude n'est pas une distance d'écran mais le nombre de rotations de la molette de la souris. Généralement, ces valeurs sont des multiples de 120. Par exemple, 120 devrait faire défiler le texte vers le haut de 4 lignes et -240 ferait défiler le texte vers le bas de 8 lignes. Il modifie la valeur de l'attribut MouseWheel. amplitude Correspond à la substitution %D pour les scripts de liaison.
detail = valeur (associé à "<Enter>", "<Leave>", "<FocusIn>" et "<FocusOut>")
valeur est un str ( ) qui ne peut prendre que l'une des valeurs suivantes : "NotifyAncestor", "NotifyNonlinearVirtual", "NotifyDetailAucun", "NotifyPointer", "NotifyInferior", "NotifyPointerRoot", "NotifyNonlinear", "NotifierVirtuel". Il modifie la valeur de l'attribut detail. Correspond à la substitution %d pour les événements virtuels dans les scripts de liaison.
focus = booleen (associé à "<Enter>" et "<Leave>")
booleen est un bool ( ). Il modifie la valeur de l'attribut focus. Correspond à la substitution %f pour les scripts de liaison.
height = pixels (associé à "<Configure>")
pixels est un int ( ). il modifie la valeur de l'attribut height. Correspond à la substitution %h pour les scripts de liaison.
keycode = code (associé à "<KeyPress>" et "<KeyRelease>")
code est un int ( ). Il modifie la valeur de l'attribut keycode. Correspond à la substitution %k pour les scripts de liaison.
keysym = nom (associé à "<KeyPress>" et "<KeyRelease>")
nom est un str ( ). Il modifie la valeur de l'attribut keysym. Correspond à la substitution %K pour les scripts de liaison.
mode = valeur (associé à "<Enter>", "<Leave>", "<FocusIn>" et "<FocusOut>")
valeur est un str ( ) qui ne peut prendre que l'une des valeurs suivantes : "NotifyNormal", "NotifyGrab", "NotifyUngrab", "NotifyWhileGrabbed". Il modifie la valeur de l'attribut mode. Correspond à la substitution %m pour les événements virtuels dans les scripts de liaison.
override = booleen (associé à "<Map>", "<Reparent>" et "<Configure>")
booleen est un bool ( ). Il modifie la valeur de l'attribut override_redirect. Correspond à la substitution %o pour les scripts de liaison.
place = valeur (associé à "<Circulate>")
valeur est un str ( ) qui ne peut prendre que la valeur "PlaceOnTop" ou "PlaceOnBottom". Il modifie la valeur de l'attribut place. Correspond à la substitution %p pour les événements virtuels dans les scripts de liaison.
root = fenetre (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Enter>", "<Leave>"et "<Motion>")
fenetre doit être un nom de fenêtre, ou un identifiant de fenêtre. Il modifie la valeur de l'attribut root. Correspond à la substitution %R pour les scripts de liaison.
rootx = pixels (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Enter>", "<Leave>"et "<Motion>")
pixels est un int ( ). Il modifie la valeur de l'attribut x_root. Correspond à la substitution %X pour les scripts de liaison.
rooty = pixels (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Enter>", "<Leave>"et "<Motion>")
pixels est un int ( ). Il modifie la valeur de l'attribut y_root. Correspond à la substitution %Y pour les scripts de liaison.
sendevent = booleen (associé à tous les événements)
booleen est un bool ( ). Il modifie la valeur de l'attribut send_event. Correspond à la substitution %E pour les scripts de liaison.
serial = rang (associé à tous les événements)
pixels est un int ( ). Il modifie la valeur de l'attribut serie. Correspond à la substitution %# pour les scripts de liaison.
state = etat (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Enter>", "<Leave>"et "<Motion>")
pixels est un int ( ) ou, pour Visibility, il peut avoir comme valeur : "VisibilityUnobscured", ""VisibilityPartiallyObscured ou "VisibilityFullyObscured . Cette option remplace tous les modificateurs tels que Meta ou Control spécifiés dans l'événement de base. Il modifie la valeur de l'attribut state. Correspond au %ssubstitution pour les scripts de liaison.
subwindow = fenetre (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Enter>", "<Leave>"et "<Motion>")
fenetre doit être un nom de fenêtre, ou un identifiant de fenêtre. Il modifie la valeur de l'attribut subwindow. Correspond à la substitution %S pour les scripts de liaison.
time = duree (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Enter>", "<Leave>"et "<Motion>")
duree est un int ( ) ou, la valeur spéciale courant, cette valeur sera remplacée par l'heure où l'événement a eu lieu. Il modifie la valeur de l'attribut time. Correspond au %t pour les scripts de liaison.
warp = booleen (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>" et "<Motion>")
booleen est un bool ( ). True spécifie que le pointeur d'écran doit également être déformé mais le pointeur ne se déformera sur une fenêtre que si elle est mappé. Il modifie la valeur de l'attribut override_redirect. Correspond à la substitution %o pour les scripts de liaison.
width = pixels (associé à "<Configure>")
pixels est un int ( ). il modifie la valeur de l'attribut width. Correspond à la substitution %w pour les scripts de liaison.
x = abscisse (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Motion>", <Enter>", "<Leave>", <Expose>", "<Configure>", "<Gravity>" et "<Reparent>")
abscisse est un int ( ). Il modifie la valeur de l'attribut x. Correspond au %x, ou %X si l'écran est vide, pour les scripts de liaison.
y = ordonnee (associé à "<KeyPress>", "<KeyRelease>", "<ButtonPress>", "<ButtonRelease>", "<Motion>", <Enter>", "<Leave>", <Expose>", "<Configure>", "<Gravity>" et "<Reparent>")
ordonnee est un int ( ). Il modifie la valeur de l'attribut y. Correspond au %y, ou %Y si l'écran est vide, pour les scripts de liaison.
Par exemple avec widget.event_generate ( <Button> , num = 2 , x = 100 , y = 25 ), le programme se comportera, quand il rencontrera cette ligne dans le script, comme si l'utilisateur avait appuyé sur l'un des boutons de la souris, et l'objet event généré par tkinter.Event ( ) donnera la valeur, la valeur 2 à son attribut event.num (bouton de la souris cliqué) et comme coordonnées : 100 à x et 50 à y.
Voir aussi : les événements dans tkinter et la classe tkinter.Events ( ) pour des informations détaillées sur la gestion des événements dans tkinter.
EXEMPLE.
import tkinter
def FNC_Clique ( ) :
BUT_Test.event_generate ( "<Button>" , button = 2 , x = 100 , y = 25 )
TKI_Principal.after ( 1000 , FNC_Clique )
def FNC_Entrer ( ) :
TKI_Principal.event_generate ( "<KeyRelease-b>" , x = 20 , y = 654 )
TKI_Principal.after ( 500 , FNC_Entrer )
def FNC_Invoquer ( event ) :
kplus = 1
if event.x == 100 : kplus = .01
if event.x == 20 : kplus = .0001
ktotal = float ( LAB_Message [ "text" ] ) + kplus
LAB_Message [ "text" ] = f"{ktotal:.4f}"
TKI_Principal = tkinter.Tk ( )
BUT_Quitter = tkinter.Button ( TKI_Principal , text = "Quitter" , command = TKI_Principal.destroy )
BUT_Test = tkinter.Button( TKI_Principal , text = "Appui + 1" )
LAB_Message = tkinter.Label ( TKI_Principal , text = "0" )
BUT_Test.bind ( "<Button>" , FNC_Invoquer )
TKI_Principal.bind ( "<KeyRelease-b>" , FNC_Invoquer )
LAB_Message.pack ( )
BUT_Test.pack ( )
BUT_Quitter.pack ( )
TKI_Principal.after ( 350 , FNC_Clique )
TKI_Principal.after ( 200 , FNC_Entrer )
TKI_Principal.mainloop ( )
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de