• Aucun résultat trouvé

Contrôles de recueil de saisies

Dans le document VISUAL BASIC (Page 108-111)

Visual Basic fournit plusieurs mécanismes pour recueillir des saisies dans un programme.

Les zones de texte acceptent les saisies clavier, les menus présentent des commandes pou-vant être cliquées ou sélectionnées au clavier et les boîtes de dialogue proposent diffé-rents éléments pouvant être sélectionnés individuellement ou dans un groupe. Dans cet exercice, vous allez apprendre à utiliser quatre contrôles importants qui permettent de recueillir des saisies dans plusieurs situations différentes. Vous allez découvrir les contrô-les RadioButton, CheckBox, ListBox et ComboBox. Vous allez passer en revue chacun de ces objets à l’aide d’un programme Visual Basic appelé Saisie, interface utilisateur d’un système de commande simple et illustratif. En exécutant le programme, vous allez acqué-rir de l’expérience avec les objets de saisie. Dans le chapitre suivant, j’expliquerai com-ment ces objets peuvent être utilisés parallèlecom-ment aux menus dans un programme à part entière.

À titre d’expérience, essayez maintenant d’utiliser le contrôle CheckBox pour voir com-ment la saisie utilisateur est traitée sur un formulaire et dans le code.

Expérimenter le contrôle CheckBox

1. Dans le menu Fichier, cliquez sur Fermer le projet pour fermer le projet Anniversaire.

2. Dans le menu Fichier, cliquez sur Nouveau Projet.

La boîte de dialogue Nouveau projet s’affiche.

3. Créez un nouveau projet Visual Basic Application Windows Forms intitulé Mon Cocher Case.

Visual Basic crée le nouveau projet et un formulaire vierge s’affiche dans le Concep-teur.

4. Dans la Boîte à outils, cliquez sur le contrôle CheckBox.

5. Sur le formulaire, dessinez deux objets case à cocher, l’un en dessous de l’autre.

Les cases à cocher apparaissent sous forme d’objets dans le formulaire. Pour créer la deuxième case à cocher, cliquez une nouvelle fois sur Checkbox dans la Boîte à outils.

6. À l’aide du contrôle PictureBox, dessinez deux objets zone d’image carrés sous les deux cases à cocher.

7. Définissez les propriétés suivantes pour les objets case à cocher et zone d’image :

Dans cette description, vous allez utiliser les cases à cocher pour afficher et masquer les images d’une calculatrice et d’une photocopieuse. La propriété Text de l’objet case à cocher détermine le contenu de l’étiquette case à cocher dans l’interface uti-lisateur. Avec la propriété Checked, vous pouvez donner une valeur par défaut à la case à cocher. Régler Checked sur True place une coche dans la case, et régler Chec-ked sur False (paramètre par défaut) retire la coche. Les propriétés SizeMode dans les zones d’image permettent d’ajuster les images à la zone d’image.

Votre formulaire présente un résultat similaire à :

Objet Propriété Paramètre

CheckBox1 Checked Text

True

« Calculatrice »

CheckBox2 Text « Photocopieur »

PictureBox1 Image SizeMode

c:\vb08epe\chap03\calculette.bmp StretchImage

PictureBox2 SizeMode StretchImage

8. Double-cliquez sur le premier objet case à cocher pour ouvrir la procédure événe-mentielle CheckBox1_CheckedChanged dans l’Éditeur de code, puis saisissez le code suivant :

If CheckBox1.CheckState = 1 Then

PictureBox1.Image = System.Drawing.Image.FromFile _ ("c:\vb08epe\chap03\Calculette.bmp")

PictureBox1.Visible = True Else

PictureBox1.Visible = False End If

La procédure événementielle CheckBox1_CheckedChanged s’exécute seulement si l’utilisateur clique sur le premier objet case à cocher. Elle utilise une structure de décision If... Then (décrite au chapitre 6 « Utiliser les structures de décision ») pour confirmer le statut actuel, ou état, de la première case à cocher, et elle affiche l’image d’une calculette à partir du dossier c:\vb08epe\ chap03 si la case est cochée.

La propriété CheckState prend la valeur 1 si la case est cochée et 0 si elle n’est pas cochée (vous pourriez également recourir à l’énumération CheckState.Checked qui apparaît dans IntelliSense lors de votre saisie, comme alternative à fixer la valeur à 1). J’utilise la propriété Visible pour afficher l’image si la case est cochée ou pour la masquer si la case n’est pas cochée. Remarquez que j’ai coupé la longue ligne qui charge l’image dans l’objet zone d’image à l’aide du caractère de suite (_).

9. Dans l’Explorateur de solutions, cliquez sur le bouton Concepteur de vues pour réafficher le formulaire, double-cliquez sur la deuxième case à cocher, puis ajoutez le code suivant à la procédure événementielle CheckBox2_CheckedChanged:

If CheckBox2.CheckState = 1 Then

PictureBox2.Image = System.Drawing.Image.FromFile _ ("c:\vb08epe\chap03\Photocop.bmp")

PictureBox2.Visible = True Else

PictureBox2.Visible = False End If

Cette procédure événementielle est presque identique à celle que vous venez de saisir. Seuls le nom de l’image (photocop.bmp), de l’objet case à cocher (CheckBox2) et de l’objet zone d’image (PictureBox2) changent.

10. Dans la barre d’outils Standard, cliquez sur le bouton Enregistrer tout pour enregis-trer vos changements et choisissez le dossier de destination c:\vb08epe\chap03.

Exécuter le programme Cocher Case

1. Dans la barre d’outils Standard, cliquez sur le bouton Démarrer le débogage.

Astuce Le programme Cocher Case complet est disponible dans le dossier c:\vb08epe\chap03\Cocher Case.

Visual Studio exécute le programme dans l’EDI. Sur le formulaire, l’image de la cal-culatrice apparaît dans une zone d’image et la première case est cochée.

2. Sélectionnez la case à cocher Photocopieuse.

Visual Basic affiche l’image de la photocopieuse :

3. Essayez plusieurs combinaisons de cases à cocher, en sélectionnant ou en désélec-tionnant plusieurs fois les cases pour tester le programme. La logique de program-mation que vous avez ajoutée avec quelques courtes lignes de code Visual Basic gère les cases à la perfection. Dans les chapitres suivants, vous découvrirez davan-tage de détails de programmation.

4. Cliquez sur le bouton Fermer sur le formulaire pour arrêter le programme.

Dans le document VISUAL BASIC (Page 108-111)