Étape 8 : écrire du code pour le gestionnaire d'événements du bouton Afficher une image
Dans cette étape, vous configurez le bouton Afficher une image pour qu'il fonctionne de la manière suivante :
Lorsqu'un utilisateur clique sur ce bouton, le programme ouvre une boîte de dialogue Ouvrir un fichier.
Si un utilisateur choisit un fichier image, le programme affiche cette image dans le PictureBox.
L'IDE dispose d'un outil puissant appelé IntelliSense pour vous aider à écrire du code.Lorsque vous tapez du code, l'IDE ouvre une zone de saisie semi-automatique en fonction des mots partiels que vous entrez.Il essaie de déterminer ce que vous voulez écrire ensuite, et passe automatiquement au dernier élément que vous choisissez dans la liste.Vous pouvez utiliser les touches de direction Haut et Bas pour parcourir la liste, ou continuer à taper des lettres pour limiter le nombre de choix.Lorsque vous voyez le choix qui vous intéresse, appuyez sur la touche TAB pour le sélectionner.Sinon, vous pouvez ignorer les suggestions, si vous n'en avez pas besoin.
Pour obtenir une version vidéo de cette rubrique, consultez Tutorial 1: Create a Picture Viewer in Visual Basic - Video 4 ou Tutorial 1: Create a Picture Viewer in C# - Video 4.
Pour écrire du code pour le gestionnaire d'événements du bouton Afficher une image
Ouvrez le Concepteur Windows Forms et double-cliquez sur le bouton Afficher une image.L'IDE accède immédiatement au concepteur de code et place votre curseur à l'intérieur de la méthode showButton_Click() que vous avez ajoutée précédemment.
Tapez un i sur la ligne vierge entre les deux accolades {}.(En Visual Basic, écrivez sur la ligne vierge entre Private Sub... et End Sub.) Une fenêtre IntelliSense s'ouvre, comme indiqué dans l'image suivante.
IntelliSense avec du code Visual C#
La fenêtre IntelliSense doit mettre le mot if en surbrillance.(Dans le cas contraire, entrez un f minuscule, et elle le fera.) Notez que l'info-bulle jaune en regard de la fenêtre IntelliSense affiche Extrait de code pour l'instruction if.(En Visual Basic, l'info-bulle indique également qu'il s'agit d'un extrait de code, mais avec un libellé légèrement différent.) Vous voulez utiliser cet extrait de code.Appuyez sur la touche TAB pour insérer if dans votre code.Ensuite, appuyez à nouveau sur la touche TAB pour utiliser l'extrait if.(Si vous avez cliqué ailleurs et que votre fenêtre IntelliSense a disparu, appuyez sur retour arrière pour effacer le i et retapez-le pour que la fenêtre IntelliSense s'ouvre à nouveau.)
Code Visual C#
Ensuite, utilisez IntelliSense pour entrer le reste du code destiné à ouvrir une boîte de dialogue Ouvrir un fichier.Si l'utilisateur a cliqué sur le bouton OK, le PictureBox charge le fichier que l'utilisateur a sélectionné.Les étapes suivantes vous expliquent comment entrer le code, et malgré leur nombre important, elles se limitent en fait à quelques séquences de touches :
Commencez par sélectionner le texte true dans l'extrait de code.Tapez op pour le remplacer.(En Visual Basic, comme vous devez commencer par une majuscule, tapez Op.)
La fenêtre IntelliSense s'ouvre et affiche openFileDialog1.Appuyez sur TAB pour le sélectionner.(En Visual Basic, comme chaque mot commence par une majuscule, il est écrit OpenFileDialog1.Vérifiez que OpenFileDialog1 est sélectionné.)
Tapez un point (.) (appelé « dot » par de nombreux programmeurs). Étant donné que vous avez tapé un point juste après openFileDialog1, une fenêtre IntelliSense s'ouvre pour afficher toutes les propriétés et les méthodes du composant OpenFileDialog.Ce sont les mêmes propriétés que celles affichées dans la fenêtre Propriétés lorsque vous cliquez dans le Concepteur Windows Forms.Il existe également des méthodes qui peuvent indiquer au composant d'effectuer certaines opérations (comme ouvrir une boîte de dialogue).
[!REMARQUE]
La fenêtre IntelliSense vous donne accès à des propriétés et à des méthodes.Pour comprendre ce qui est affiché, regardez l'icône à gauche.Vous pouvez voir l'image d'un bloc à côté de chaque méthode et d'une main à côté de chaque propriété.Il y a également une icône d'éclair en regard de chaque événement.Ces images se présentent comme suit.
Icône Méthode
Icône Propriété
Icône Événement
Commencez à taper ShowDialog (les majuscules n'ont aucune importance dans IntelliSense).La méthode ShowDialog() affichera la boîte de dialogue Ouvrir un fichier.Une fois que la fenêtre a mis ShowDialog en surbrillance, appuyez sur TAB.
Lorsque vous utilisez une méthode sur un contrôle ou un composant (on parle également d'appeler une méthode), vous devez ajouter des parenthèses.Vous devez donc entrer des parenthèses ouvrantes et fermantes : ()
[!REMARQUE]
Les méthodes sont des éléments essentiels dans un programme, et ce didacticiel vous a montré plusieurs façons de les utiliser.Vous pouvez appeler la méthode d'un composant pour lui demander d'effectuer une action, comme lorsque vous avez appelé la méthode ShowDialog() du composant OpenFileDialog.Vous pouvez créer vos propres méthodes pour que votre programme effectue certaines actions particulières (comme la méthode showButton_Click() que vous générez maintenant, qui permet d'ouvrir une boîte de dialogue et une image lorsqu'un utilisateur clique sur un bouton).
Pour Visual C#, ajoutez un espace, puis deux signes égal (==).Pour Visual Basic, ajoutez un espace, puis un seul signe égal (=).(Visual C# et Visual Basic utilisent des opérateurs d'égalité différents.)
Ajoutez un autre espace.Une fois terminé, une autre fenêtre IntelliSense s'ouvre.Commencez par taper DialogResult et appuyez sur TAB pour l'ajouter.
[!REMARQUE]
Lorsque vous écrivez du code pour appeler une méthode, elle retourne parfois une valeur.Ici, la méthode ShowDialog() du composant OpenFileDialog retourne une valeur DialogResult.DialogResult est une valeur spéciale qui vous indique ce qui s'est passé dans une boîte de dialogue.Un composant OpenFileDialog peut être appelé lorsque l'utilisateur clique sur OK ou Annuler : sa méthode ShowDialog() retournera donc DialogResult.OK ou DialogResult.Cancel.
Tapez un point pour ouvrir la fenêtre IntelliSense de la valeur DialogResult.Entrez la lettre O et appuyez sur TAB pour insérer OK.
[!REMARQUE]
La première ligne de code doit être terminée.Pour Visual C#, la ligne doit être la suivante.
if (openFileDialog1.ShowDialog() == DialogResult.OK)
Pour Visual Basic, la ligne doit être la suivante.
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
Maintenant, ajoutez une ligne de code supplémentaire.Vous pouvez la taper (ou la copier et la coller), mais utilisez plutôt IntelliSense pour l'ajouter.Plus vous vous familiariserez avec IntelliSense, plus vous pourrez écrire votre propre code rapidement.Votre dernière méthode showButton_Click() se présente comme suit :
Private Sub showButton_Click() Handles showButton.Click If OpenFileDialog1.ShowDialog() = DialogResult.OK Then PictureBox1.Load(OpenFileDialog1.FileName) End If End Sub
private void showButton_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == DialogResult.OK) { pictureBox1.Load(openFileDialog1.FileName); } }
Pour continuer ou examiner
Pour passer à l'étape suivante du didacticiel, consultez Étape 9 : examiner, commenter et tester votre code.
Pour revenir à l'étape précédente du didacticiel, consultez Étape 7 : ajouter des composants Dialog à votre formulaire.