Visual Basic1
Visual Basic1
natio
nal.s
chola
rvox.
com:
None
: 2110
4945
58:4
5006
882:
196.4
7.13
3.43
:164
5280
5 84
Carole Lamontagne
ISBN 978-2-923565-41-5
84
Longueuil (Québec) J4H 2W1
5
5280
Téléphone : (450) 679-1955 [Link]
télécopieur : (450) 679-6339 lde@[Link]
:164
3.43
7.13
96.4
1
882:
5006
58:4
Tous droits réservés. On ne peut reproduire, enregistrer, ni diffuser aucune partie du présent ouvrage sous quelque
4945
forme ou par quelque procédé que ce soit sans avoir une autorisation écrite de l'éditeur.
2110
:
None
com:
rvox.
chola
nal.s
natio
inter
À Guy,
inter
natio
nal.s
chola
rvox.
com:
None
: 2110
4945
58:4
5006
882:
196.4
7.13
3.43
:164
5280
5 84
Avec toute ma reconnaissance pour son soutien de chaque instant.
iii
inter
natio
nal.s
chola
rvox.
com:
None
: 2110
4945
58:4
5006
882:
196.4
7.13
3.43
:164
5280
5 84
PRÉFACE
Découvrir et maîtriser Visual Basic 6.0 s'adresse à toute personne qui désire s'initier à
la programmation avec le langage Visual Basic et concevoir rapidement des
applications Windows. Ce volume est conçu pour les autodidactes et pour les
étudiants sous la supervision d'un enseignant. Avant d'aborder la programmation
d'applications Windows, vous devez connaître l'environnement Windows et plus
particulièrement l'Explorateur de Windows.
84
Approche pédagogique
5
5280
Dans les exercices proposés, vous découvrirez de nouvelles notions dont le code de
programmation vous sera fourni intégralement. Ce code est toujours suivi d'un
:164
encadré dans lequel vous trouverez des détails et des renvois à des sections théoriques
3.43
du volume. Toute nouvelle notion est reprise au moins une seconde fois, dans un
même exercice ou dans un exercice subséquent, afin que vous puissiez la maîtriser.
7.13
Le titre du volume Découvrir et maîtriser Visual Basic 6.0 résume bien son approche
pédagogique.
96.4
Structure du volume
1
882:
Le Chapitre 1 propose une introduction au langage Visual Basic à la fois théorique et
pratique. Deux exercices vous permettent de vous familiariser avec l'environnement de
5006
développement de Visual Basic et de créer rapidement de petites applications.
Le Chapitre 2 vous permet de travailler efficacement dans l'environnement de
58:4
développement de Visual Basic 6.0. Il est important de le consulter avant d'aborder les
4945
lesquels vous découvrirez graduellement les contrôles de la boîte à outils ainsi que les
principaux éléments de programmation qui sont décrits dans les chapitres 4 et 5.
:
None
Dans le Chapitre 6, vous apprendrez comment utiliser les boîtes de dialogue standard
de Windows dans vos projets et vous serez en mesure de programmer un éditeur de
com:
texte semblable à WordPad, comprenant un menu standard, une barre d'outils, une
barre d'état et un menu contextuel.
rvox.
informations fournies par les utilisateurs lors de l'exécution de vos applications. Vous
découvrirez comment valider des données, les enregistrer, les protéger et les imprimer
nal.s
Le Chapitre 8 permet de créer votre propre contrôle ActiveX. Tout au long de votre
apprentissage vous manipulerez constamment des objets et dans ce dernier chapitre,
vous découvrirez plus spécifiquement comment créer des propriétés, des méthodes et
des évènements propres à une classe d'objets. Vous terminerez ainsi votre
apprentissage avec une excellente base des concepts généraux de la programmation
orientée objet.
Dans l'ensemble des exercices, l'accent est mis sur le respect des standards Windows
concernant les interfaces graphiques utilisateur, la logique de programmation,
84
l'utilisation de normes de programmation et la robustesse des programmes. Plusieurs
5
techniques de validation sont utilisées pour vérifier les données au moment de la saisie
5280
et les erreurs d'exécution sont interceptées afin d'afficher des messages significatifs
aux utilisateurs.
:164
Le langage Visual Basic comportant un très grand nombre d'éléments, ce volume a été
3.43
conçu pour accélérer l'accès aux informations qu'il contient. Un super index permet de
retrouver un élément à la page où il est décrit et dans les exercices où il est utilisé.
7.13
Pour vous guider, repérez les symboles suivants :
96.4
Dans un exercice, ce symbole spécifie un renvoi à une section
1
882:
théorique du volume où un élément est détaillé. 5006
Ce symbole indique qu'une alternative ou un truc est proposé.
58:4
comme suit :
None
End Type
rvox.
x Les mots en gras sont des mots qui appartiennent au langage Visual Basic et sont
obligatoires. Exemple : Type et End Type.
chola
x Les mots en italique indiquent que vous devez fournir un élément. Par exemple, il
peut s'agir d'une instruction, du nom d'une variable ou encore d'un type de
nal.s
données. Exemple : nomtype spécifie qu'un type de données doit être cité à cet
emplacement.
natio
inter
vii
x Les éléments entre [crochets] sont facultatifs. Exemple : l'élément [indices] est
optionnel ainsi que les mots Private et Public.
x Les éléments séparés par une barre verticale | indiquent qu'un seul des éléments
cités doit être choisi. Exemple : les mots Private et Public sont optionnels mais si
vous désirez utiliser ces mots, un seul des deux mots peut être cité.
x Des points de suspension (…) indiquent que l'élément qui précède peut être cité
plusieurs fois. Exemple : nomélément [([indices])] As type… peut être énuméré
plusieurs fois, l'instruction Type pouvant comporter plusieurs éléments.
845
Exemple de codification d'une instruction Type :
5280
Private Type Etudiant
Nom As String * 30
:164
NotesObtenues(5) As Integer
End Type
3.43
Les images
7.13
Lors de la conception des interfaces graphiques, plusieurs images sont nécessaires. Il
peut s'agir d'icônes (.ico), de curseurs (.cur) ou encore d'images bitmaps (.bmp). Ces
96.4
images sont stockées dans des fichiers image qui sont fournis avec Visual Basic 6.0.
1
Lors de l'installation de Visual Basic 6.0, ces fichiers sont généralement placés sous le
882:
dossier suivant : 5006
C:\Program Files \Microsoft Visual Studio \Common \Graphics \…
Plus de 300 fichiers sont fournis avec le volume*. Ces fichiers sont structurés de la
4945
84
1.6 L'Explorateur d'objets 22
5
1.7 Syntaxe de la programmation des objets 23
5280
1.8 Convention d'affectation de noms aux objets (propriété Name) 24
:164
Chapitre 2 L'environnement de développement 28
2.1 La fenêtre principale 28
3.43
2.2 La fenêtre Explorateur de projets 29
2.3 La boîte à outils et les composants 30
7.13
2.4 La fenêtre de conception de feuille 33
96.4
2.5 La fenêtre Présentation des feuilles 37
2.6 La fenêtre Propriétés 38
1
2.7 La fenêtre de code 40
2.8 La barre de menus 882: 45
5006
Chapitre 3 Découvrir et maîtriser Visual Basic par la pratique 69
3.1 Exercice 3 Créer le projet Inscription 69
58:4
84
4.8 Les masques de saisie (contrôle MaskEdBox) 221
5
4.9 Les contrôles FlatScrollBar, Slider et UpDown 224
5280
4.10 L'objet App 227
4.11 L'objet ClipBoard (le Presse-papiers de Windows) 228
:164
4.12 Ajouter et supprimer dynamiquement un contrôle 228
3.43
Chapitre 5 Les éléments du langage de programmation 231
5.1 Les modules 231
7.13
5.2 Les types de fichier d'un projet Visual Basic 232
96.4
5.3 L'objet de démarrage 233
5.4 Les procédures 234
1
5.5 Les instructions d'arrêt (End, Unload et Stop) 241
5.6 Les éléments de syntaxe 882: 241
5006
5.7 Les variables et les types de données 243
5.8 Les constantes 249
58:4
84
7.1 Les fichiers de données 353
5
Exercice 23 Modifier le projet Inscription 365
5280
7.2 Production de rapports à l'aide de l'objet Printer 367
Exercice 24 Imprimer le fichier de données du projet Inscription 373
:164
Exercice 25 Modifier le projet Regroupement de projets 377
3.43
Exercice 26 Créer le projet Sondage 384
Exercice 27 Créer le projet Validation de données 391
7.13
Chapitre 8 Création d'un contrôle ActiveX 405
96.4
8.1 Introduction à la technologie ActiveX 405
Exercice 28 Créer le projet Contrôle Pointage 405
1
8.2 L'Assistant Interface de contrôle ActiveX VB 6 423
Annexe A 882: 425
5006
Annexe B 428
58:4
Bibliographie 430
4945
Index 431
2110
:
None
com:
rvox.
chola
nal.s
natio
inter
1 Introduction
84
1.1 HISTORIQUE DU LANGAGE DE PROGRAMMATION VISUAL BASIC
5
5280
Le langage de programmation BASIC (Beginner's All purpose Symbolic Instruction Code)
fut créé dans les années 60 par des chercheurs de l'Université de Darmouth en
:164
Nouvelle-Écosse. Lors de sa création, le langage BASIC était destiné aux débutants en
programmation, d'où le mot beginner. Avec l'apparition des premiers ordinateurs
3.43
domestiques au début des années 80, Bill Gates et Paul Allen adaptèrent le langage
7.13
BASIC aux micro-ordinateurs de type PC. Ils fondèrent alors, la société Microsoft afin
de commercialiser ce langage.
96.4
Les premiers PC incluaient une version du langage Basic dont la première fût GW-
1
BASIC, suivie de QuickBasic et finalement QBasic, toutes ces versions étant utilisables
sous DOS.
882:
5006
Au début des années 90, avec la plate-forme Windows, est apparu le langage de
programmation Visual Basic (VB) qui permettait aux programmeurs de créer
58:4
objet (OO) piloté par des événements, facile à utiliser, même pour un amateur, mais
qui au fil des années est devenu de plus en plus sophistiqué et volumineux. Il est
2110
(Microsoft Developer Network), l'aide en ligne de Visual Basic sous le format HTML. La
bibliothèque MSDN fait partie de la famille de produits de développement
nal.s
natio
inter
2 Découvrir et maîtriser Visual Basic 6.0
d'applications Microsoft Visual Studio 6.0 qui comprend entre autres, Visual C++ et
Visual FoxPro.
On retrouve deux dérivés de Visual Basic : VBA et VBScript. VBA (Visual Basic for
Applications) est une variante réduite de Visual Basic, utilisée pour l'automatisation de
tâches dans les applications Microsoft Office (Word, Excell, Access). VBScript est un
langage de script surtout utilisé sur les serveurs Web et interprété par le navigateur
des clients.
84
Le dernier produit d'outils de développement de Microsoft, Visual [Link] est
5
conçu pour les applications et les services Web distribués. On y retrouve le sous-
5280
produit Visual [Link] qui comporte des changements importants par rapport à
Visual Basic 6.0, au niveau du langage et de l'environnement de développement. La
:164
version anglaise de ce produit est apparue au début de l'année 2002 et la version
française éducationnelle n'est pas encore disponible en magasin (juin 2002).
3.43
Le principal concurrent de Visual Basic est l'outil de développement Delphi, un produit
7.13
de la compagnie Borland. Ces deux outils de type RAD (Rapid Application Development)
sont similaires. Cependant, en terme de programmation orientée objet, dans Visual
96.4
Basic, l'absence du concept d'héritage (création d'une nouvelle classe à partir d'une
1
classe existante), constitue une faiblesse. Cette lacune est cependant corrigée dans la
version Visual [Link]. 882:
5006
changements dans les paramètres de configuration de votre logiciel Visual Basic 6.0
ainsi que dans les paramètres régionaux de Windows, afin d'éviter certaines
2110
845
5280
:164
3.43
7.13
96.4
1
882:
5006
modifications".
4945
2110
:
None
com:
rvox.
chola
nal.s
natio
inter
4 Découvrir et maîtriser Visual Basic 6.0
Lorsqu'un projet est testé en mode exécution, l'option "Invite d'enregistrement des
modifications" provoque l'affichage d'une confirmation d'enregistrement des
dernières modifications effectuées. Il est alors possible de répondre oui ou non ou
encore d'annuler l'exécution.
Le choix par défaut "Ne pas enregistrer les modifications" est risqué. Un
programme en développement provoque parfois un gel du système et des
modifications peuvent ainsi être perdues.
84
Le troisième choix "Enregistrer les modifications" est restrictif parce qu'il est
5
possible qu'à certains moments, le programmeur ne désire pas enregistrer ses
5280
derniers changements.
:164
x Accédez au Panneau de configuration de Windows, sélectionnez "Paramètres
régionaux" et par la suite, l'onglet Nombre.
3.43
7.13
96.4
1
882:
5006
58:4
4945
2110
:
None
com:
rvox.
Le symbole décimal utilisé dans les nombres doit être la virgule. Cette
chola
de dates et heures.
natio
inter
1 Introduction 5
845
5280
:164
3.43
7.13
96.4
1
882:
5006
58:4
4945
2110
:
None
com:
rvox.
chola
nal.s
natio
inter
6 Découvrir et maîtriser Visual Basic 6.0
845
5280
:164
3.43
7.13
96.4
1.3 EXERCICE 1 DÉCOUVRIR VISUAL BASIC
1
Partie 1 Explorer l’environnement de Visual Basic 882:
5006
petite application.
3. Pour démarrer Visual Basic 6.0 :
com:
Cliquez sur le bouton Démarrer de la barre des tâches et sélectionnez les choix
Programmes / Microsoft Visual Studio 6.0 / Microsoft Visual Basic 6.0 /
rvox.
nom du projet et le mode de travail sont affichés dans la barre de titre du projet.
nal.s
natio
inter
1 Introduction 7
84
x La fenêtre Présentation des feuilles (en bas, à droite)
5
5280
Si l'une des fenêtres n'est pas affichée, sélectionnez la fenêtre absente dans le
menu Affichage.
:164
Observez la figure illustrée à la page 28 du Chapitre 2, afin de bien
3.43
identifier chacune des fenêtres de l’environnement de Visual Basic 6.0.
Le Chapitre 2 décrit en détails, les fenêtres, menus et barres d’outils de
7.13
l’environnement de développement.
96.4
Partie 2 Créer un premier projet Question truquée
1
Étape 1 Nommer et enregistrer les composantes d’un nouveau projet
Il est fortement conseillé de créer un nouveau dossier pour chacun de vos projets Visual
4945
1. Nommez le projet :
2110
les minuscules et les majuscules dans les noms. Observez le nom qui apparaît
maintenant dans la fenêtre Explorateur de projets.
nal.s
natio
inter
8 Découvrir et maîtriser Visual Basic 6.0
3. Enregistrez la feuille :
Il peut sembler prématuré d'enregistrer des fichiers avant même d'avoir effectué
d'autres tâches. C'est une bonne habitude à prendre pour éviter toute perte
éventuelle de votre travail. La forme et le projet sont sauvegardés une première
fois et par la suite, vous n'aurez qu'à cliquer sur la disquette de la barre d'outils
pour enregistrer en bloc tous les fichiers modifiés qui sont rattachés au projet.
84
x Dans la boîte de dialogue "Enregistrer le fichier sous", sélectionnez votre
5
5280
dossier Visual Basic et cliquez sur le bouton "Créer un nouveau dossier" .
:164
x Nommez le nouveau dossier Exercice1 Question. Cliquez sur le bouton
Ouvrir.
3.43
x Modifiez le nom de fichier pour [Link] et cliquez sur le bouton
7.13
Enregistrer.
96.4
1
882:
5006
58:4
4945
2110
:
4. Enregistrez le projet :
None
845
5280
:164
Étape 2 Conception de l'interface graphique du projet
3.43
7.13
96.4
1
882:
5006
58:4
Notez que les propriétés sont en ordre alphabétique sauf la propriété (Name) qui
apparaît toujours en premier.
84
4. Fixez d'autres propriétés à l'objet frmQuestion.
5
5280
BackColor : Sélectionnez une couleur d'arrière-plan dans l'onglet Palette
BorderStyle : 1-Fixed single (boutons Réduire et Agrandir enlevés, taille non
:164
modifiable par l'utilisateur)
3.43
StartUpPosition : 2-Center screen (fenêtre affichée au centre de l'écran)
7.13
5. Dans la boîte à outils, double-cliquez sur l'objet CommandButton (bouton de
96.4
commande) .
6. Dans la fenêtre Propriétés, modifiez la propriété Name pour cmdOui.
1
882:
Pour modifier une propriété, sélectionnez d'abord l'objet concerné pour accéder
5006
à sa fenêtre Propriétés.
réf. 1.8), un nom d'objet est précédé d'une abréviation minuscule qui identifie
4945
l'objet (exemple : cmd pour CommandButton). Le nom de l'objet débute par une
majuscule (exemple : cmdOui).
2110
la feuille.
9. Ajoutez le bouton de commande Non sur la feuille et fixez les propriétés suivantes :
chola
Name : cmdNon
Caption : Non
nal.s
10. Dans la boîte à outils, sélectionnez un contrôle Label (étiquette qui contient
généralement un titre) et dessinez-le sur la feuille. Fixez les propriétés qui suivent
et ajustez la taille et la position de l'étiquette.
Name : lblTitre
Caption : Est-ce que je vais vraiment maîtriser Visual Basic à la fin de ce
volume ?
BackColor : Sélectionnez une couleur d'arrière-plan dans l'onglet Palette
84
BorderStyle : 1-Fixed single (style de la bordure de l'étiquette)
5
Font : Fixez une police et une taille
5280
ForeColor : Sélectionnez une couleur de texte dans l'onglet Palette
:164
11. Enregistrez votre travail en cliquant sur la disquette de la barre d'outils.
3.43
12. Exécutez le projet en cliquant sur le bouton Exécuter de la barre d'outils ou en
pressant la touche F5.
7.13
13. Observez la fenêtre qui s'affiche au centre de l'écran. Pour l'instant, les boutons
96.4
Oui et Non ne sont pas opérationnels. La prochaine étape vise à programmer ces
deux boutons. Quittez le mode [exécution] par le bouton Fermer , afin de revenir
1
882:
au mode [création].
14. Attribuez la valeur 1680 à la propriété Top des boutons Oui et Non. Réajustez la
5006
La propriété Top est la distance entre le haut d'un objet et le haut de la feuille,
exprimée en twips. (567 twips = 1 cm.)
4945
courant est l'événement Click qui survient lorsque l'utilisateur clique sur un objet.
Le nom d'une procédure événementielle est formé du nom de l'objet, du caractère _
com:
Une procédure débute par le mot Sub et se termine par les mots End Sub.
Les procédures sont codées dans la fenêtre de code.
chola
84
La combinaison des touches Ctrl + Espace permet de compléter un mot
5
5280
automatiquement. Tapez les premiers caractères d'un mot, et pressez
Ctrl + Espace. L'éditeur de Visual Basic tentera de compléter lui-même
le mot. Cette combinaison de touches est un élément très utile de
:164
l'éditeur de VB. Il vous permettra de réduire le texte à taper de façon
appréciable. À retenir !
3.43
Lors de la saisie du code de programmation, tapez tous les caractères en
minuscules. L'éditeur de Visual Basic convertit automatiquement les
7.13
caractères en majuscules lors d'un changement d'instruction.
96.4
Une ligne qui débute par une apostrophe est un commentaire (affiché en
vert).
1
Utilisez la touche Tab pour mettre en retrait les instructions à l'intérieur
882:
d'une procédure. Le retrait par défaut est d'une largeur de 4 caractères.
Je suggère d'utiliser seulement 2 caractères. Si la tabulation est de 4
5006
quelque part sur la ligne en erreur (l'erreur n'est pas forcément sur le
caractère où se trouve le curseur...). Toute erreur de syntaxe doit être
corrigée avant d'exécuter le projet.
nal.s
natio
inter
1 Introduction 13
845
5280
liste Objet liste Procédure
Visual Basic insère la procédure de l'événement le plus courant de l'objet,
:164
sans laisser le temps au programmeur de sélectionner un événement dans la
liste Procédure. Dans le cas présent, l'événement Click a été ajouté.
3.43
x Sélectionnez l'événement MouseMove dans la liste Procédure. La procédure
7.13
Click sera supprimée lors de la prochaine exécution.
96.4
Évitez de taper la première ligne d'une procédure !
1
882:
Utilisez les listes Objet et Procédure de la fenêtre de code afin d'éviter des
fautes de frappe inutiles.
5006
cmdNon_MouseMove :
'Procédure exécutée lorsque le pointeur de la souris
4945
Else
[Link] = 1680
com:
End If
End Sub
rvox.
Important !
84
(bouton du centre) dans le haut de la fenêtre de l'Explorateur de projets.
5
5280
:164
3.43
7.13
96.4
x Cliquez plusieurs fois sur les boutons Code et Afficher l'objet et observez le
passage d'une fenêtre à l'autre.
1
Étape 4 Créer le fichier exécutable (.exe)
882:
5006
x Sélectionnez Fichier au menu et le choix Créer [Link]...
x Dans la boîte de dialogue Créer le projet, assurez-vous que le dossier actif est
58:4
1.4 EXERCICE 2
com:
/Exercice 2 Jean.
natio
inter
1 Introduction 15
845
2. Nommez le projet Jean et la forme frmJean (propriété Name). Enregistrez la forme
5280
dans le fichier …/Visual Basic /Exercice 2 Jean / [Link] et le projet dans le
fichier [Link].
:164
Pour enregistrer les composantes du projet qui ont été modifiées, cliquez sur la
3.43
disquette de la barre d'outils.
7.13
Étape 3 Conception de l'interface graphique du projet
96.4
1
882:
5006
58:4
4945
2110
:
None
com:
rvox.
x La barre de titre contient le titre "Jean qui rit et Jean qui pleure" ;
nal.s
84
couleur du texte rouge
5
5280
titre de l'étiquette Jean qui rit
taille des caractères 14
:164
3. Ajoutez un contrôle Image sur l'interface graphique .
3.43
Name imgRit
7.13
Picture Sélectionnez …/Visual Basic /Exercice 2 Jean /Jean qui [Link]
Visible True
96.4
4. Ajoutez un second contrôle Image et superposez-le au premier.
1
Name imgPleure
Picture …/Visual Basic /Exercice 2 Jean /Jean qui [Link]
882:
Visible False
5006
Lors du démarrage, l'image qui rit sera affichée et l'image qui pleure sera
58:4
dissimulée.
4945
Bouton cmdQuitter :
Style = 1- Graphical, arrière-plan : jaune
com:
End Sub
natio
inter
1 Introduction 17
84
Private Sub cmdCliquer_Click()
5
5280
Si l'image qui rit est visible
- dissimuler l'image qui rit
- rendre l'image qui pleure visible
:164
- afficher le texte "Jean qui pleure" dans l'étiquette
sinon
3.43
- dissimuler l'image qui pleure
- rendre l'image qui rit visible
7.13
- afficher le texte "Jean qui rit" dans l'étiquette
Fin Si
96.4
End Sub
1
882:
Consultez la section L'instruction If, page 261. 5006
3. Testez votre projet jusqu'à ce qu'il fonctionne parfaitement.
Étape 5 Définir un bouton par défaut et un bouton d'annulation
58:4
bouton.
:
None
com:
Un seul bouton par défaut peut être défini sur une feuille.
chola
3. Testez le projet et pressez les touches Enter, Espace et Esc au lieu d'utiliser la
souris.
84
4. Testez de nouveau le projet et pressez plusieurs fois la touche Tab.
5
5280
La touche Tab permet le déplacement entre les différents contrôles accessibles
d'une feuille. Dans le cas présent, elle permet de passer d'un bouton à l'autre.
:164
Lorsque le bouton Quitter obtient le focus, les touches Enter et Esc sont alors
3.43
équivalentes.
7.13
96.4
Partie 2 Modifier le projet Lumières de circulation
Étape 1 Préparation, observation et ouverture d'un projet existant
1
882:
1. À partir de l'Explorateur de Windows, copiez le dossier du volume Chapitre1
/Exercice2 /Debut Lumieres dans un nouveau dossier …/Visual Basic /Exercice 2
5006
Lumieres.
58:4
superposées : une lumière verte, une lumière jaune et une lumière rouge.
84
La lettre F soulignée indique à l'utilisateur qu'il peut presser la combinaison des
5
5280
touches Alt + F pour fermer la fenêtre.
Étape 3 Coder les procédures
:164
1. Codez la procédure du bouton Fermer. Lors d'un clic sur ce bouton, la feuille est
3.43
déchargée de la mémoire et l'exécution est terminée.
2. Codez la procédure du bouton "Changer Lumières" :
7.13
x Lorsque l'utilisateur sélectionne le bouton cmdChanger, les images doivent
96.4
s'afficher dans l'ordre suivant : vert/jaune/rouge/vert/jaune/rouge. Une image
visible doit être dissimulée afin que la suivante soit affichée.
1
x 882:
Utilisez la structure suivante de l'instruction IF : (If/EsleIf/Else/End If)
5006
If condition1 Then
instruction(s)
ElseIf condition2 Then
58:4
instruction(s)
Else
4945
instruction(s)
End If
2110
4. Codez une procédure pour chacune des images qui sera exécutée lors d'un clic sur
rvox.
chacune d'entre elles. Par exemple, si l'utilisateur clique sur l'image verte, la
procédure suivante sera exécutée :
chola
End Sub
natio
inter
20 Découvrir et maîtriser Visual Basic 6.0
L'instruction Call permet d'exécuter une procédure déjà codée. Cette instruction
permet souvent de réduire le code de programmation en évitant des répétitions
inutiles et illogiques.
Consultez la section Déclaration et appel d'une procédure événementielle Sub
(instruction Call), page 234.
5. Exécutez le projet et cliquez plusieurs fois directement sur les lumières. Assurez-
84
vous du bon fonctionnement des procédures Click de chacune des images.
5
5280
6. Testez le fonctionnement des touches Enter, Espace, Esc, Alt+L et Alt+F.
7. Créez et enregistrez le fichier exécutable [Link].
:164
3.43
1.5 LA PROGRAMMATION ORIENTÉE OBJET (OO) PILOTÉE PAR DES
7.13
ÉVÉNEMENTS
96.4
Visual Basic permet de créer rapidement une interface graphique utilisateur (GUI,
Graphical User Interface). L'interface utilisateur qu'on appelle aussi feuille ou fenêtre,
1
est un objet Form sur lequel d'autres objets visuels ou graphiques sont ajoutés,
882:
comme des boutons de commande, des images, des étiquettes, des zones de texte, des
5006
cases à cocher, ou encore des boutons d'option. Ces objets sont appelés contrôles ou
Composants ActiveX qui est une norme de programmation Microsoft qui définit les
58:4
VB) ou ses attributs (terme OO). Ces caractéristiques peuvent être attribuées en mode
[création] ou en mode [exécution].
2110
On retrouve tous les objets du projet dans la liste de sélection des objets dans la
fenêtre Propriétés.
com:
rvox.
chola
nal.s
natio
inter
1 Introduction 21
La propriété Name de chacun des objets a été fixée dans la fenêtre des Propriétés
en mode [création]. Par exemple, l'objet Form porte le nom frmQuestion et le
bouton Non porte le nom cmdNon.
D'autres valeurs de propriétés ont été attribuées aux objets en mode [création] :
Caption, Icon, BackColor, ForeColor, BorderStyle, Font, StartUpPosition et
Top.
La propriété Top de l'objet cmdNon est modifiée en mode [exécution], ce qui
84
permet le déplacement de l'objet.
5
5280
On peut agir sur un objet avec des méthodes en mode [exécution]. Une méthode
(terme VB) ou un comportement (terme OO) d'un objet est représenté par un verbe
:164
d'action. Par exemple, la méthode SetFocus (placer le focus) indique de placer le
curseur sur un objet et la méthode Clear (effacer) spécifie d'effacer le contenu d'un
3.43
objet.
7.13
Les instructions Visual Basic réagissent à des événements qui peuvent être
déclenchés, par exemple, lors d'un clic sur un objet (événement Click) ou encore,
96.4
lorsque le pointeur de la souris atteint un objet (événement MouseMove). Les
1
événements peuvent survenir en tout temps et les instructions sont exécutées lorsque
882:
les événements se produisent. Un programme Visual Basic est ainsi subdivisé en
procédures événementielles, chaque procédure étant formée d'instructions,
5006
cmdNon_MouseMove.
4945
Lorsqu'un objet est ajouté sur une feuille, une nouvelle instance de la classe est
alors créée.
chola
nal.s
natio
inter
22 Découvrir et maîtriser Visual Basic 6.0
Exemple
84
l'autre est gris. Chacun de ces 2 objets issus de la même classe, possède ainsi ses
5
5280
propres propriétés.
:164
1.6 L'EXPLORATEUR D'OBJETS
3.43
L'Explorateur d'objets répertorie les classes d'objets existantes ainsi que les
constantes et fonctions de Visual Basic.
7.13
x Pressez la touche F2 ou sélectionnez au menu Affichage /Explorateur d'objets.
96.4
Choisissez la bibliothèque VB et la classe CommandButton.
1
882:
5006
58:4
4945
2110
:
None
Des icônes sont utilisées pour différencier la nature des choix qui apparaissent
com:
Propriété
Événement
chola
Méthode ou fonction
Groupe de constantes
nal.s
845
5280
:164
3.43
7.13
On peut visualiser tous les membres de la classe ColorConstants. Chacune des
constantes de cette classe peut être utilisée dans le code de programmation pour
96.4
représenter une couleur.
1
882:
x Sélectionnez < Toutes bibliothèques > et la classe < Globales >. Vous y retrouverez
la plupart des fonctions préprogrammées de Visual Basic. Une courte description
5006
de chaque fonction apparaît dans le bas de la fenêtre de l'Explorateur d'objets.
58:4
En Visual Basic, on peut utiliser les objets existants ou encore créer de nouvelles
classes d'objets par des modules de classe. On peut aussi créer de nouveaux
:
None
[Link]été = Valeur
nal.s
Le nom de l'objet est suivi d'un point, lui-même suivi du nom de la propriété. Le
caractère = permet d'affecter une valeur à la propriété. Cette valeur peut prendre
natio
plusieurs formes.
inter
24 Découvrir et maîtriser Visual Basic 6.0
.
Objet Méthode
84
Le nom de l'objet est suivi d'un point, lui-même suivi du nom de la méthode.
5
5280
Exemple [Link] donner le focus au bouton cmdNon
[Link] effacer les provinces de la liste
:164
Lorsque le point est tapé à la suite du nom de l'objet, l'éditeur de Visual Basic affiche
3.43
une liste des propriétés et méthodes de l'objet. Une icône permet d'identifier s'il s'agit
d'une propriété ou d'une méthode.
7.13
96.4
1
882:
5006
58:4
4945
2110
Les noms d'objets doivent respecter des règles de syntaxe et des normes de
programmation. Les règles syntaxiques sont propres au langage de programmation et
com:
sont obligatoires, tandis que les normes de programmation sont nécessaires à une
compréhension rapide du code de programmation. Ces normes sont suggérées dans
rvox.
Normes de programmation :
x Le nom commence par un préfixe généralement formé de 3 lettres minuscules
formant une abréviation de l'objet. Ce préfixe permet d'identifier rapidement la
classe de l'objet.
845
Exemple : Le préfixe cmd identifie un objet de la classe CommandButton.
5280
x Le préfixe est suivi d'une identification qui commence par une lettre majuscule.
:164
Exemple : Le nom cmdEffacer identifie le bouton de commande Effacer et est
plus facile à lire que cmdeffacer.
3.43
x L'identification peut comporter plusieurs mots. Dans ce cas, chacun des mots
7.13
doit débuter par une lettre majuscule.
Exemple : Le nom cmdEffacerResultats identifie le bouton de commande "Effacer
96.4
les résultats".
1
Visual Basic ne tient pas compte des minuscules et des majuscules. Leur utilisation
a pour but d'améliorer la lisibilité du code. 882:
5006
Règles de syntaxe :
x Un nom doit commencer par une lettre, sa longueur ne doit pas dépasser 40
58:4
soulignement _.
Exemple : lblNombre1, lblNombre2, lblNombre_Etudiants
2110
Il n'est pas nécessaire de nommer tous les contrôles ajoutés sur une feuille.
Seulement les contrôles qui figurent dans le code de programmation doivent
com:
être nommés.
rvox.
chola
nal.s
natio
inter
26 Découvrir et maîtriser Visual Basic 6.0
Tableau partiel des préfixes suggérés dans la rubrique Conventions, Attribution
de nom à un objet de l'index de l'Aide MSDN
84
5
ComboBox cbo MSChart (graphique) cht
5280
Command (modèle objet ADO) cmd MSFlexGrid fgd
:164
CommandButton cmd MSHFlexGrid flex
3.43
CommonDialog dlg OLE ole
7.13
CoolBar clb OptionButton opt
96.4
Connection (modèle objet ADO) cnn PictureBox pic
1
882:
Data (contrôle de données) dat ProgressBar prg
84
Image img TextBox txt
5
5280
ImageCombo icbo Timer tmr
:164
ImageList ils Toolbar tlb
3.43
Label lbl TreeView tre
7.13
ListView lvw VScrollBar vsb
96.4
MaskEditBox msk Winsock wsk
1
MDI (feuille) mdi
882:
5006
58:4
4945
2110
:
None
com:
rvox.
chola
nal.s
natio
inter
2 L'environnement de
développement
84
2.1 LA FENÊTRE PRINCIPALE
5
5280
1
:164
2
3.43
3
7.13
4
96.4
5
1
882:
5006
6
58:4
7
4945
2110
8
:
None
La fenêtre principale est celle qui apparaît au démarrage de Visual Basic. Elle regroupe
la barre de menus, la barre d'outils Standard ainsi que 5 fenêtres distinctes :
nal.s
84
Étendues.
5
5280
La barre de titre affiche le nom du projet Projet1 ainsi que le mode [création] qui
signifie que le projet est à l'étape de conception. Pour tester un projet en cours de
:164
conception, on passe du mode [création] au mode [exécution] par la touche F5 ou le
bouton Exécuter de la barre d'outils Standard . Le bouton Fin permet de
3.43
revenir au mode [création].
7.13
2.2 LA FENÊTRE EXPLORATEUR DE PROJETS
96.4
1
882:
5006
58:4
Cette fenêtre utilise une structure arborescente pour illustrer les différentes
:
composantes d'un ou plusieurs projets. Une icône spécifie le type de la composante. Elle
None
est suivie de son nom et du nom du fichier entre parenthèses, dans lequel la composante
a été enregistrée. L'absence de suffixe dans le nom du fichier indique que la composante
com:
n'a pas encore été enregistrée. On y retrouve aussi trois boutons fort utiles :
rvox.
(F7)
Affiche la fenêtre de conception menu Affichage/Objet
Afficher l'objet
de feuille. (Maj+F7)
nal.s
Exemple : Le bouton "Basculer les dossiers" affiche les types Feuilles et Modules.
845
5280
2.3 LA BOÎTE À OUTILS ET LES COMPOSANTS
:164
La fenêtre Boîte à outils est affichée, en sélectionnant au menu Affichage /Boîte à
3.43
outils ou par l'icône correspondante de la barre d'outils standard .
7.13
96.4
Pointeur de sélection PictureBox
1
882:
Label TextBox5006
Frame CommandButton
58:4
CheckBox OptionButton
ComboBox
ListBox
4945
HScrollBar VScrollBar
2110
Timer DriveListBox
:
None
DirListBox FileListBox
com:
Shape Line
Image Data
rvox.
OLE
chola
nal.s
natio
inter
2 L'environnement de développement 31
Le pointeur de sélection
La Boîte à outils contient un pointeur de sélection , qui sert à sélectionner des
contrôles déjà en place sur la feuille de conception. Pour utiliser le pointeur de
sélection, cliquez sur son bouton dans la boîte à outils et glissez le pointeur de la
souris dans la fenêtre de conception, de façon à encadrer les éléments à sélectionner.
Dans les figures qui suivent, cinq objets ont été sélectionnés.
845
5280
:164
3.43
7.13
Les contrôles intégrés
96.4
Dans la Boîte à outils, on retrouve aussi un bouton pour chacun des 20 objets appelés
1
contrôles intégrés qui peuvent être ajoutés sur la feuille de conception. Lorsqu'un
882:
objet est ajouté, une nouvelle instance de la classe d'objet est alors créée.
5006
Chacun des objets inclus dans la boîte à outils est détaillé dans la section 4.2 Les
58:4
Ajout de composants
2110
D'autres composants, appelés aussi contrôles ActiveX, peuvent être ajoutés dans la
boîte à outils, selon les besoins du projet. Pour ajouter un composant :
:
None
845
5280
:164
3.43
x Observez le ou les nouveaux composants dans le bas de la boîte à outils.
7.13
96.4
1
882:
5006
58:4
La plupart des fichiers de type Contrôle ActiveX sont stockés dans le dossier
4945
Plusieurs contrôles ActiveX sont utilisés dans les exercices de ce volume. Chacun est
:
None
décrit lors de son utilisation pratique. La plupart d'entre eux sont décrits dans le
Chapitre 4.
com:
845
5280
La fenêtre de conception de feuille permet de créer l'interface utilisateur. La feuille ou
:164
fenêtre créée est une instance de la classe Form de Visual Basic et un objet dont le
3.43
nom par défaut est Form1.
Ajout d'un contrôle
7.13
Double-cliquez sur le contrôle dans la boîte à outils ou cliquez sur le contrôle dans la
96.4
boîte à outils pour le sélectionner et dessinez-le sur la feuille de conception en glissant
1
avec la souris ; relâchez le bouton de la souris lorsque la taille désirée est atteinte.
882:
Il est possible de copier un contrôle existant par Copier/Coller afin d'ajouter des
5006
contrôles semblables (exemple : 4 boutons de commande de la même taille).
Sélectionnez le contrôle à copier, pressez Ctrl+C et Ctrl+V. Pour ne pas créer un
58:4
Les groupes de contrôles sont décrits dans la section 4.3 Les groupes de contrôles.
rvox.
chola
nal.s
natio
inter
34 Découvrir et maîtriser Visual Basic 6.0
Sélection d'objets
Avant d'apporter des modifications à un ou plusieurs objets, ceux-ci doivent d'abord
être sélectionnés. On identifie un objet sélectionné par les poignées de dimension (petits
carrés) qui l'entourent. Dans la feuille qui suit, le bouton Command2 est sélectionné.
845
5280
:164
x Pour annuler une sélection, cliquez à l'extérieur de l'objet sélectionné.
3.43
x Pour sélectionner un seul contrôle ou une feuille, cliquez sur l'objet ou utilisez la
7.13
liste de sélection des objets dans le haut de la fenêtre Propriétés.
96.4
x Pour sélectionner plusieurs objets :
- Utilisez le "Pointeur de sélection" de la boîte à outils et encadrez les objets à
1
882:
sélectionner ou 5006
- Sélectionnez le premier objet et enfoncez la touche Maj ou Ctrl pour
sélectionner les autres.
58:4
845
5280
En utilisant la sélection multiple, il est possible de modifier rapidement une propriété
:164
commune aux contrôles sélectionnés. Par exemple, les polices de caractères de
plusieurs objets (propriété Font) peuvent être modifiées en une seule opération.
3.43
7.13
Suppression d'un contrôle
96.4
Pour supprimer un ou plusieurs contrôles, sélectionnez-les et pressez la touche Suppr.
Les contrôles effacés sont récupérables par Édition /Annuler (Ctrl+Z). Après avoir
1
exécuté le projet, aucune récupération n'est possible.
Déplacement et ajustement de la taille des contrôles 882:
5006
souris ou, enfoncez la touche Ctrl et utilisez les flèches de direction du clavier pour
déplacer dans la direction désirée.
4945
Pour ajuster la taille d'un contrôle ou d'une feuille, placez le pointeur de la souris sur
2110
l'une des poignés de dimension de l'objet. Lorsque le pointeur prend l'apparence d'une
flèche double (ņ), glissez jusqu'à la largeur ou la hauteur souhaitée. Les poignées
:
Le menu Format, décrit dans ce chapitre, offre d'autres options pour déplacer et
ajuster la taille des contrôles (section Le menu Format, page 56).
chola
nal.s
natio
inter