Vbnet

Disponible uniquement sur Etudier
  • Pages : 6 (1297 mots )
  • Téléchargement(s) : 0
  • Publié le : 23 mars 2011
Lire le document complet
Aperçu du document
Initiation à l’environnement de développement VB. NET

La programmation événementielle

Certains objets ont une caractéristique particulière : ils se voient à l'écran. Ainsi, un logiciel comme Windows est en fait truffé de ce genre d'objets ! Les boutons, les menus, les fenêtres, les cases à cocher, tout cela constitue une armada d'objets visibles, et surtout, capables de réagir à diversessollicitations de l'utilisateur via le clavier ou la souris. Les programmeurs qui ont écrit Windows ont donc prévu, et écrit, des myriades de morceaux de code (des procédures) qui se déclenchent à chaque fois que l'utilisateur accomplit telle action sur tel type d'objet. Donc, je le répète, concevoir une application événementielle, c'est concevoir des procédures qui se déclencheront automatiquementà chaque fois que l'utilisateur effectuera telle action sur tel objet qu'on aura mis à sa disposition.
[pic]
Définition :
Une action sur un objet capable de déclencher une procédure s'appelle un événement.
Voilà pourquoi ce type de programmation porte le nom de programmation événementielle. Par ailleurs, il est à noter que les événements qu'un objet donné est capable de gérer ont étédéfinis dans la classe qui a servi à créer l'objet.

[pic]
La syntaxe

Comment effectue-t-on la liaison entre une procédure et un événement ? C'est extrêmement simple : cette liaison figure en toutes lettres dans l'en-tête de la procédure, via le mot-clé Handles (que l'on peut traduire par "gère"). Ainsi, une procédure non événementielle, toute bête, toute simple, Calcul, aura la tête suivante :Private Sub Calcul()
  instructions
End Sub

Pour que cette procédure s'exécute à chaque fois que l'on clique sur le bouton nommé Résultat, il suffira que la procédure se présente ainsi :

Private Sub Calcul() Handles Résultat.Click
  instructions
End Sub

Handles peut être traduit par : “Est déclenché par…”

Si d'aventure, plusieurs événements différents doivent déclencher lamême procédure, ce n'est pas du tout un souci. Il suffit de séparer tous les événements concernés par des virgules après le mot clé Handles. Si, par exemple la remise à zéro doit être effectuée en cas de clic sur le bouton Résultat, mais aussi de clic sur le bouton Annulation, on aura :

Private Sub RemiseAZero() Handles Résultat.Click, Annulation.Click
  instructions
End Sub

En réalité, il y ajuste une petite subtilité supplémentaire. C'est que lorsqu'un événement déclenche une procédure, Visual Basic prévoit automatiquement un passage de paramètres depuis l'événement jusqu'à la procédure, passage de paramètres sans lequel on serait parfois bien embêté.
La syntaxe complète d'une procédure événementielle sera donc typiquement :

Private Sub RemiseAZero(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Résultat.Click, Annulation.Click
  instructions
End Sub

Où, à chaque exécution de la procédure suite à un événement : :
• sender est un paramètre en entrée (par valeur) qui désigne l'objet qui a déclenché l'événement (sender = « l’expéditeur » de l’évènement)
• e représente un paramètre en entrée (par valeur) qui spécifie les conditions del'événement.
Gardons ces généralités en tête ; nous aurons naturellement l'occasion de revenir plus en détail sur ces deux paramètres et la manière de s'en servir.
Partie 2 - L'interface de Visual Studio

Les deux fenêtres principales

Lorsqu'on va la programmer via Visual Studio, une application va donc toujours pouvoir être abordée sous deux angles complémentaires :
• l'aspect graphique,visuel, bref, son interface. Dans la fenêtre principale de VB, nous pourrons facilement aller piocher les différents objets que nous voulons voir figurer dans notre application, les poser sur notre formulaire, modifier leurs propriétés par défaut, etc :

[pic]

• le code proprement dit, où nous allons entrer les différentes procédures en rapport avec le formulaire en question :...
tracking img