Retour


Les événements de la bibliothèque WX PYTON


Les gestionnaires d’événements sont des méthodes qui sont appelées quand quelque chose se passe dans l'interface graphique (bouton cliqué, etc.)
Nous allons lier ces gestionnaires d’événement à des widgets spécifiques pour des événements spécifiques.


A) Les événements dans une application


Par exemple nous allons faire quelque chose quand le bouton est cliqué, ou que la touche ENTREE est pressée dans le champ texte.


Après avoir créé le bouton et la zone de texte à l'aide de la palette, choisir les événements :


Cela rajoute dans le code source deux définitions de méthodes :


Puis, on lie ("bind") ensuite ces méthodes aux widgets :

Pour le bouton:

Pour le champ texte:


Ainsi:

Si on place le code :
print "Vous cliquez sur le bouton !"
sous :
def OnButton1Button(self, event):
à la place de :
event.Skip()
Alors il s'affichera dans la console ou dans l'onglet Sortie standard de l'Editeur (ou fenêtre MS-Dos)
le message " Vous cliquez sur le bouton ! "

Exemple :

Si vous voulez changer une zone de texte (label) que vous avez insérez dans votre fenêtre à laide du bouton créé précédemment,
il faut :

- Créer une zone de texte statique à l'aide de la palette composants de base (premier widget).

- On place le code :
self.staticText1.SetLabel( "Vous cliquez sur le bouton" )
sous :
def OnButton1Button(self, event):
à la place de :
event.Skip()

La méthode SetLabel de wx staticText change le texte se redimensionne.
Il s'affichera alors dans la zone de texte le message " Vous cliquez sur le bouton ! "

B) Liste des événements

Les cinq premiers types d'événements se retrouvent dans tous les objets. Les autres sont spécifiques à un objet.


1) Les événements liés à l'aide sur un objet (HelpEvent) :


wx.EVT_HELP

L’événement intervient lorsqu'un utilisateur interroge la bulle d'aide sensible au passage de la souris.


2) Les événements liés aux touches du clavier (KeyEvent)


wx.EVT_KEY_DOWN

L’événement intervient lorsqu'une touche du clavier a été pressée.

wx.EVT_KEY_UP

L’événement intervient lorsqu'une touche du clavier a été relâché.

wx.EVT_CHAR

L’événement intervient après l'appui sur une touche pour la traduction du caractère.


3) Les événements liés à l'ouverture ou la fermeture d'une fenêtre (FocusEvent)


wx.EVT_KILL_FOCUS

L’événement intervient après la fermeture de la fenêtre.

wx.EVT_SET_FOCUS

L’événement intervient après l'ouverture de la fenêtre.


4) Les événements liés à la souris (MouseEvent) :


wx.EVT_LEFT_DOWN

L’événement intervient après l'appui sur le bouton gauche de la souris.

wx.EVT_LEFT_UP

L’événement intervient après le relâchement du bouton gauche de la souris.

wx.EVT_LEFT_DCLICK

L’événement intervient après le double clique du bouton gauche de la souris.

wx.EVT_MIDDLE_DOWN

L’événement intervient après l'appui sur le bouton du milieu de la souris.

wx.EVT_MIDDLE_UP

L’événement intervient après le relâchement du bouton du milieu de la souris.

wx.EVT_MIDDLE_DCLICK

L’événement intervient après le double clique du bouton du milieu de la souris.

wx.EVT_RIGHT_DOWN

L’événement intervient après l'appui sur le bouton droit de la souris.

wx.EVT_RIGHT_UP

L’événement intervient après le relâchement du bouton droit de la souris.

wx.EVT_RIGHT_DCLICK

L’événement intervient après le double clique du bouton droit de la souris.

wx.EVT_MOTION

L’événement intervient lorsque la souris est déplacée.

wx.EVT_ENTER_WINDOW

L’événement intervient lorsque la souris entre dans les limites d'une fenêtre.

wx.EVT_LEAVE_WINDOW

L’événement intervient lorsque la souris quitte les limites de la fenêtre

wx.EVT_MOUSEWHEEL

L’événement intervient lorsque la molette de défilement de la souris est utilisée.

wx.EVT_MOUSE_EVENTS

L’événement intervient pour tout action avec la souris.


5) Les événements diverses liés à une fenêtre (MiscEvent)


wx.EVT_ERASE_BACKGROUND

L’événement intervient lorsque le fond d'une fenêtre doit être repeint.

wx.EVT_PAINT

L’événement intervient lorsque le contenu d'une fenêtre doit être repeint.

wx.EVT_MOVE

L’événement intervient lorsque la fenêtre lié est déplacée vers une nouvelle position.

wx.EVT_SIZE

L’événement intervient lorsque la fenêtre lié est redimensionnée.


6) Les événements liés à un objet bouton (ButtonEvent)


wx.EVT_BUTTON

L’événement intervient après le relâchement du clique sur un objet bouton.


7) Les événements liés à un objet texte modifiable (TextCtrlEvent)