visual basic

44
Visual Basic www.developpez.c.la 1 SOMMAIRE I- INTRODUCTION : .............................................................................................................. 3 II- L’ENVIRONNEMENT DE DEVELOPPEMENT DE VISUAL BASIC : .................... 3 1- ELEMENTS DE LENVIRONNEMENT DE DEVELOPPEMENT INTEGRE VISUAL BASIC (IDE) : .... 4 1- Barre de menus : ............................................................................................................. 4 2- Barres d’outils : .............................................................................................................. 4 3- Boîte à outils : ................................................................................................................. 4 2- LES ETAPES DE CREATION DUNE APPLICATION EN VISUAL BASIC : ..................................... 5 3- LES STRUCTURES DE BASE DU VISUAL BASIC : .................................................................... 5 4- LES VARIABLES : .................................................................................................................. 5 1- Types de variables : ......................................................................................................... 6 2- Les déclarations : ............................................................................................................ 7 3- Portée des variables : ...................................................................................................... 7 4- Les constantes : ............................................................................................................... 8 5- LES TABLEAUX : .................................................................................................................. 8 6- LES OPERATEURS : ............................................................................................................... 9 III- LES INSTRUCTIONS DE CONTROLE : ..................................................................... 9 1- AFFECTION : ........................................................................................................................ 9 2- IF THEN ELSE : ......................................................................................................... 10 3- GOTO : .............................................................................................................................. 10 4- FOR NEXT : ................................................................................................................... 10 5- DO LOOP : ..................................................................................................................... 11 While … Wend : ................................................................................................................. 12 Select Case : ...................................................................................................................... 13 IV- SOUS-PROGRAMMES : ............................................................................................... 13 1- APPEL INTERNE GOSUB RETURN : .............................................................................. 14 2- APPEL EXTERNE PROCEDURES ET FONCTIONS : ............................................................... 14 V- TRAITEMENT DES CHAINES DE CARACTERES : ................................................ 17 1- BOITE DE SAISIE : ............................................................................................................... 18 2- MSGBOX : ....................................................................................................................... 19 VI- CREATION D’UNE INTERFACE UTILISATEUR : ................................................ 20 1- CARACTERISTIQUES DES FEUILLES MDI EN MODE EXECUTION : ........................................ 21 2- CREATEURS DE MENUS : .................................................................................................... 21 3- ORGANISATION DES FEUILLES FILLES : .............................................................................. 22 4- LES MENUS CONTEXTUELS : ............................................................................................... 22 LES CONTROLES DE VISUAL BASIC : .......................................................................... 23 CATEGORIES DE CONTROLES : ................................................................................................ 23 Les groupes de contrôles : ................................................................................................. 23

Upload: tomecruzz

Post on 02-Oct-2015

17 views

Category:

Documents


3 download

DESCRIPTION

Visual Basic

TRANSCRIPT

  • Visual Basic

    www.developpez.c.la 1

    SOMMAIRE

    I- INTRODUCTION : .............................................................................................................. 3

    II- LENVIRONNEMENT DE DEVELOPPEMENT DE VISUAL BASI C :.................... 3

    1- ELEMENTS DE LENVIRONNEMENT DE DEVELOPPEMENT INTEGRE VISUAL BASIC (IDE) :.... 4 1- Barre de menus :............................................................................................................. 4 2- Barres doutils :.............................................................................................................. 4 3- Bote outils :................................................................................................................. 4

    2- LES ETAPES DE CREATION DUNE APPLICATION EN VISUAL BASIC :..................................... 5 3- LES STRUCTURES DE BASE DU VISUAL BASIC : .................................................................... 5 4- LES VARIABLES :.................................................................................................................. 5

    1- Types de variables :......................................................................................................... 6 2- Les dclarations :............................................................................................................ 7 3- Porte des variables :......................................................................................................7 4- Les constantes :............................................................................................................... 8

    5- LES TABLEAUX : .................................................................................................................. 8 6- LES OPERATEURS : ............................................................................................................... 9

    III- LES INSTRUCTIONS DE CONTROLE : ..................................................................... 9

    1- AFFECTION : ........................................................................................................................ 9 2- IF THEN ELSE : ......................................................................................................... 10 3- GOTO : .............................................................................................................................. 10 4- FOR NEXT : ................................................................................................................... 10 5- DO LOOP :..................................................................................................................... 11

    While Wend :................................................................................................................. 12 Select Case :...................................................................................................................... 13

    IV- SOUS-PROGRAMMES : ............................................................................................... 13

    1- APPEL INTERNE GOSUB RETURN :.............................................................................. 14 2- APPEL EXTERNE PROCEDURES ET FONCTIONS : ............................................................... 14

    V- TRAITEMENT DES CHAINES DE CARACTERES : ................................................ 17

    1- BOITE DE SAISIE :............................................................................................................... 18 2- MSGBOX :....................................................................................................................... 19

    VI- CREATION DUNE INTERFACE UTILISATEUR : ................................................ 20

    1- CARACTERISTIQUES DES FEUILLES MDI EN MODE EXECUTION : ........................................ 21 2- CREATEURS DE MENUS : .................................................................................................... 21 3- ORGANISATION DES FEUILLES FILLES : .............................................................................. 22 4- LES MENUS CONTEXTUELS :............................................................................................... 22

    LES CONTROLES DE VISUAL BASIC : .......................................................................... 23

    CATEGORIES DE CONTROLES :................................................................................................ 23 Les groupes de contrles :................................................................................................. 23

  • Visual Basic

    www.developpez.c.la 2

    VII- LES FICHIERS .............................................................................................................. 32

    1- MODES DE TRAITEMENT DES FICHIERS :............................................................................. 33 1) Accs Squentiel :.......................................................................................................... 33 2) Accs direct ou accs alatoire :................................................................................... 34 3) Accs binaire :............................................................................................................... 35

    2- LES INSTRUCTIONS DE TRAITEMENT DES FICHIERS :........................................................... 35 1) Open :............................................................................................................................ 35 2) Line Input :.................................................................................................................... 36 3) Input () :........................................................................................................................ 36 4) Input # : ......................................................................................................................... 37 5) Print # : ......................................................................................................................... 38 6) Write # :......................................................................................................................... 38 7) Close :........................................................................................................................... 39 8) Freefile :........................................................................................................................ 39 9) Get :............................................................................................................................... 39 10) Put :............................................................................................................................. 40 11) Seek :........................................................................................................................... 41 12) Loc :............................................................................................................................. 42 13) EOF :........................................................................................................................... 43 14) LOF :........................................................................................................................... 43 15) FileLen :...................................................................................................................... 44

  • Visual Basic

    www.developpez.c.la 3

    Un langage de programmation, cest un outil qui sert crire des programmes rpondant lattente de lutilisateur de manire les excuter laide dinstructions propre chaque langage. Par leur faon de communiquer, on dfinit deux types de langage :

    - Le langage bas niveau : Langage qui communique directement avec le matriel (Assembleur)

    - Le langage haut niveau : Basic, Pascal, Fortran. On les diffrencie aussi par leurs aspects, cest dire, le domaine dutilisation :

    1- Aspect scientifique : C, Pascal, PLM, Fortran 2- Gestion : (SGBD : Dbase, Clipper, Foxpro), Langage COBOL 3- Langage Orient Objet : Visual C++, C++, Small Talk.

    I- Introduction : Visual Basic est loutil le plus facile utiliser pour crer des applications Microsoft Windows. Visual Basic se compose des deux mots Visual et Basic. Le mot Visual fait rfrence la mthode utilise pour crer linterface graphique utilisateur (GUI, Graphical User Interface). Au lieu de rdiger de multiples lignes de code pour dcrire lapparence et lemplacement des lments dinterface, il vous suffit de glisser dplacer des objets prdfinis lendroit adquat sur lcran. Le mot Basic fait rfrence au langage BASIC (Beginners All-Purpose Symbolic Instruction Code), langage le plus utilis par les programmeurs depuis les dbuts de linformatique. Visual Basic constitue une volution par rapport au langage BASIC initial et comporte aujourdhui plusieurs centaines dinstructions de fonctions et de mots cls, dont un grand nombre font directement rfrence linterface graphique utilisateur (GUI) de Windows.

    II- Lenvironnement de dveloppement de Visual Basi c : Lenvironnement de travail de Visual Basic est souvent dsign sous le nom de environnement de dveloppement intgr (IDE, Intergrated Development Environment), car il intgre de nombreuses fonctions varis telles que la cration, la modification, la compilation et le dbogage au sein du mme environnement. Dans la plupart des outils de dveloppement traditionnels, chacune de ces fonctions est excute par un programme distinct dot de sa propre interface.

    Lenvironnement de dveloppement intgr Visual Basic

  • Visual Basic

    www.developpez.c.la 4

    1- Elments de lenvironnement de dveloppement int gr Visual Basic (IDE) : 1- Barre de menus : Affiche les commandes qui vous permettent dutiliser Visual Basic. Outre menus habituels, savoir Fichier, Edition, Affichage, Fentre et ? (Aide), des menus permettent daccder des fonctions spcifiques ncessaires la programmation, notamment les menus Projet, Format et Dbogage. 2- Barres doutils : Contiennent des boutons constituant des raccourcis vers des lments de menu frquemment utiliss. Vous pouvez cliquer sur un bouton de la barre doutils pour excuter laction quil reprsente. Par dfaut, la barre doutils Standard apparat lorsque vous dmarrez Visual Basic. 3- Bote outils : Fournit un ensemble doutils ncessaires au moment de la cration pour disposer les contrles sur une feuille. Icne Nom du contrle Nom de la classe Description Zone dimage PictureBox Affiche une image, effectue des sorties graphiques

    ou peut servir de cadre dautres contrles. Etiquette Label Ltiquette pour afficher du texte, sans permettre

    une saisie de lutilisateur. Zone de Texte TextBox Pour saisir du texte, sur une ou plusieurs lignes. Cadre Frame Peut regrouper dautres contrles (notamment des

    boutons doption), ou tre utilis des fins de dcoration.

    Bouton de commande

    CommandButton Le bouton de commande qui permet la saisie de commande de lutilisateur.

    Case cocher Check Box La case cocher cre une case que lutilisateur peut cocher facilement pour indiquer si un tat est vrai ou faux, ou pour afficher des choix multiples lorsque lutilisateur peut en slectionner plusieurs.

    Bouton doption OptionButton Le bouton doption utilis en groupe pour autoriser le choix dune option ou de plusieurs possibles.

    Zone de liste ListBox Zone de liste affiche une liste dlments parmi lesquels lutilisateur peut faire un choix.

    Liste modifiable ComboBox Liste Modifiable allie les fonctions dune zone de texte et dune zone de liste. Permet lutilisateur de taper dans un lment slectionn ou den slectionner un dans une liste droulante.

    Liste de rpertoires

    DirListBox Liste de rpertoires affiche une liste de dossiers et de chemins daccs parmi lesquels lutilisateur peut faire un choix.

    Liste de lecteurs DriveListBox Liste de lecteurs affiche une liste de lecteurs de disque valides parmi lesquels lutilisateur peut faire un choix.

    Liste de fichiers FileListBox Liste de fichier affiche une liste de fichiers parmi lesquels lutilisateur peut faire un choix.

    Barres de HscrollBar et Barres de dfilement horizontal et vertical

  • Visual Basic

    www.developpez.c.la 5

    dfilement horizontale et

    vertical

    VscrollBar permettent un utilisateur dajouter des barres de dfilement dans des contrles qui ne les fournissent pas automatiquement. Ces contrles sont diffrents des barres de dfilement intgres dans de nombreux contrles.

    Forme Shape Forme Ajoute un rectangle, un carr, une ellipse ou un cercle sur une feuille, un cadre ou une zone dimage.

    Ligne Line Ligne Ajoute un segment de droite sur une feuille Minuterie Timer Minuterie Excute des vnements Timer des

    intervalles dfinis. Image Image Affiche des images bitmap, des icnes, ou encore

    des fichiers JPEG ou GIF. Agit comme un bouton de commande lorsque lutilisateur clique dessus.

    Conteur OLE OLE Incorpore des donnes dans une application Visual Basic.

    Donnes Data Permet de se connecter une base de donnes existante et dafficher les informations quelle contient sur vos feuilles.

    2- Les tapes de cration dune application en Visu al Basic : La cration dune application en Visual Basic comprend trois tapes :

    Cration de linterface (icnes, fentres ) Dfinition de proprits (lgende de boutons, couleur des fentres, taille

    type dimages ou dicnes ) Lcriture du code.

    3- Les structures de base du Visual Basic : Un programme en Visual Basic est une suite dinstructions qui peuvent soit senchaner Squence dinstructions soit sexcuter dans certains cas et pas dans dautres on parle alors de Structures alternatives ou se rpter plusieurs fois Structures rptitives. Comme tout langage de programmation, VB fournie une liste dinstructions qui sont implmentes (propres lui) et que lon peut donc utiliser sans les rcrire.

    4- Les variables : Le code dune application VB se droule en rponse des vnements. Les instructions sont constitues de verbes qui agissent sur des variables. Une variable peut tre considre comme une case en mmoire. Elle est identifie par un nom, permet de la dsigner, et son contenu est appel valeur. Le nom dune variable est choisi par celui qui crit le programme, en respectant quelques rgles :

    Il est constitu de lettres, de chiffres et du caractre _ (soulign) Le premier caractre est obligatoirement une lettre. Les lettres majuscules et minuscules sont quivalentes, et les caractres

    accentus sont accepts. Il ne peut y avoir plus de 40 caractre dans un nom de variable. Les mots rservs de Visual Basic (tels que Loop, If, Constant ) ne

    peuvent tre utiliss.

  • Visual Basic

    www.developpez.c.la 6

    Exemple : I J18 Compteur Bnfice_de_l_anne_1999 BnficedeLanne1999

    1- Types de variables :

    Visual Basic permet lutilisation de divers types de variables qui peuvent tre regroupes dans les catgories suivantes :

    Les variables numriques utilises pour stocker un nombre. Il en existe plusieurs catgories :

    Les entiers sur 2 octets (Integer) ou 4 octets (Long) qui peuvent stocker un nombre entier, sans dcimale, positif ou ngatif. Les premiers sont plus conomiques, mais ne peuvent tre utiliss pour le grands nombres.

    Les nombres virgule flottante sur 4 octets (single) ou 8 octets (Doublon) utiliss pour stocker un nombre rel quelconque.

    Les units montaires qui sont des nombres virgule fixe ayant 4 dcimales (currency).

    Les chanes de caractres (string) utilises pour stocker des textes, des libells Une seule chane de caractre ou une date/heure. Visual Basic effectue automatiquement les conversions selon les besoins. Il sagit du type de donnes par dfaut, dcrit ci-aprs.

    Les types spcifiques (Type) principalement utiliss pour la dclaration des enregistrements dun fichier. Suffixe Type de donnes Taille Plage

    % Integer (entier simple) 2 octets -32768 32767 & Long (entier long) 4 octets -2 147 483 648 2 147 483 647 ! Single simple prcision

    virgule flottante 8 octets -3,402823E38 1,401298E-45 pour

    les valeurs ngatives ; 1,401298E-45 3,402823E38 pour les valeurs positives

    # Double (valeur virgule flottante double

    prcision)

    8 octets -1,797693134862315E308 4,94066E-324 pour les valeurs

    ngatives ; 4,90466E-324 1,797693134862315E308 pour les

    valeurs positifs @ Currency (entier virgule

    fixe 4 chiffres dcimaux) 8 octets -922337203685477,5808

    922337203685477,5807 $ String 1 octet par

    caractre 0 approximativement 65535 octets

    Aucun Variant Variable Toute valeur numrique ou chane de caractres

    Aucun Dfini par lutilisateur (avec type)

    Nombre doctets

    requis par les lments

    Le type de donnes par dfaut est variant : cest le type de donne attribuer toutes les variables non dclares, il peut contenir des donnes numriques des chanes de caractres, des dates

  • Visual Basic

    www.developpez.c.la 7

    2- Les dclarations : Le langage Basic prsente une originalit par rapport de nombreux autres langages : il autorise lutilisation de variables sans imposer une dclaration au pralable. Ainsi, la simple utilisation dune variable dans une ligne de code gnre une dclaration implicite. Mais il est galement possible de dclarer explicitement les variables avant leur utilisation. La dclaration explicite dune variable peut se faire nimporte o dans le code du programme : dans la section des dclarations dune feuille ou dun module, ou dans le corps dune fonction ou dune procdure. Elle se fait laide de linstruction DIM ou STATIC dans une feuille ou un module, ou GLOBAL dans la section des dclarations dun module. Chaque fois que linstruction DIM est excute, la variable correspondante est rinitialise 0 sil sagit dune variable numrique, la chane vide (une chane de caractres sans caractre) sil sagit dune variable String, ou la valeur particulire Empty sil sagit dune variable Variant. Si vous souhaitez quune variable garde sa valeur de faon permanente, il faut remplacer le mot Dim par Static. Dans ce cas, la variable est initialise aux valeurs prcdentes lors du lancement de lapplication, et ensuite le seul moyen den modifier la valeur est dutiliser une instruction daffection. Sub Maproc () Dim i as integer i = i + 1 End Sub A chaque appel de la procdure MaProc, la variable i est initialise 0 par contre si on crit : Sub Maproc () Static i as integer i = i + 1 End Sub i est initialise 0 lors du lancement de lapplication, puis garde sa valeur prcdente dun appel lautre, cest dire quelle est incrmente dune unit chaque appel. Pour imposer la dclaration explicite des variables, il suffit de placer, dans la section des dclarations de chaque feuille ou module, la ligne suivante : Option Explicit. 3- Porte des variables : Si une variable est utilise sans avoir t pralablement dclare, elle nest connue qu lintrieur de la fonction ou de la procdure o elle est initialement utilise. Si vous faites rfrence au mme nom de variable dans une autre procdure, il sagit en fait dune variable diffrente. Si la variable est dclare dans une fonction ou une procdure, avec Dim ou Static, elle est dite locale cette fonction ou procdure, et nest pas connu lextrieur. Si elle est dclare dans la section des dclarations dune feuille ou dun module avec Dim elle est connue dans toutes les procdures de al feuille ou du module mais pas dans les autres. Si enfin elle est dclare dans la section des dclarations dun module avec linstruction Global au lieu de Dim, elle peut tre utilise dans toutes les feuilles et tous les modules. Il sagit dune variable globale.

  • Visual Basic

    www.developpez.c.la 8

    4- Les constantes : Une constante ressemble une variable dans a mesure o elle correspond galement une case en mmoire. Elle sen distingue cependant par le fait que son contenu est dfini initialement et ne peut pas tre modifi par le programme. La dclaration dune constante se fait laide de linstruction Const dans une feuille ou un module, et Global Const dans un module, pour que sa porte soit globale dans lapplication. Const Mai = 5 Global Const Pi = 3,14

    5- Les tableaux : On trouve souvent, dans un programme, un type de donnes qui doit se rpter avec des valeurs diffrentes. Par exemple, une application de comptabilit peut tre amene calculer des valeurs pour chacun des mois dune anne. On peut alors utiliser une seule variable et faire appel un indice pur cliquer chacun des mois, il sagit dun tableau. Pour le dclarer, on note :

    Dim Montant (1 to 12) As Single Dim Mois As Integer Mois = 5 Montant (Mois) = 192.8

    Lindice de la variable Montant peut varier entre 1 et 12 (les 12 mois de lanne). la dernire ligne dsigne le montant du mois de mai. Si de plus on souhaite travailler sur cinq annes, on peut dfinir un tableau deux dimensions : Dim Montant (1985 to 1990, 1 to 12) As Single Dim Mois As Integer, Anne As Integer Anne = 1987 Mois = 5 Montant (Anne, Mois) = 192.8

    Global i as integer

    Dim i as integer

    Sub Dim i as integer End Sub

    Sub Static i as integer End Sub

    Porte des variables

  • Visual Basic

    www.developpez.c.la 9

    Remarques : Il peut y avoir jusqu 60 dimensions. Les tableaux peuvent tre dun type de donnes quelconque. Visual Basic autorise galement la dclaration de tableaux dynamiques. Pour cela, il faut initialement crer le tableaux sans spcifier de dimensions, par exemple : Dim Anne () Avant dutiliser le tableau, il convient de fixer des dimensions laide de linstruction ReDim, par exemple : ReDim Anne (1985 to 1990) On peut utiliser plusieurs fois cette instruction pour changer les dimensions dun tableau. Mais, chaque fois, le contenu du tableau est rinitialis. Pour viter cela, il faut utiliser le mt cl Preserve : ReDim Preserve Annes (1985 to 1993) Un tableau dynamique ou non, peut tre rinitialis laide de linstruction Erase qui rinitialise les lments de tableaux statiques et libre la mmoire affecte aux tableaux dynamique. Les fonctions LBound et UBound retournent respectivement le plus petit ou le plus grand indice dun tableau, dans une dimension donne. Par exemple : Dim Montant (1985 to 1990, 1 to 12) Lbound (Montant, 1) Retourne 1985 Lbound (Montant, 2) Retourne 1 Ubound (Montant, 1) Retourne 1990

    Ubound (Montant, 2) Retourne 12

    6- Les oprateurs : Lorsquune expression renferme plusieurs oprations. Chaque partie est value et rsolue dans un ordre prdtermin ; cet ordre est connu sous le nom de priorit des oprateurs. Quant des expressions contiennent des oprateurs de diffrentes catgories, les oprateurs arithmtiques sont valus au premier suivi des oprateurs de comparaison puis des oprateurs logiques. Au sein de ces divers catgories, les oprateurs sont valus dans lordre de priorit ci-dessous :

    Oprateurs arithmtiques Oprateurs de comparaison Oprateurs logiques Evaluation une puissance (^) Ngation (-) Multiplication et division (*, /) Division dentier (\) Arithmtique modulo (mod) Concatnation de chanes (&)

    = < >

    =

    Not And Or Xor

    III- Les instructions de contrle : Le code dun programme Visual Basic est constitu dinstructions qui peuvent tre des dclarations ou bine des instructions plus actives.

    1- Affection : Une des actions les plus couramment effectues dans un programme est laffectation de valeur, qui consiste donner une variable la valeur dune autre variable, dune constante ou dune fonction. Laffectation scrit simplement laide du signe gal = : le membre situ gauche du signe prend la valeur de celui situ droite ; (on peut galement ajouter le

  • Visual Basic

    www.developpez.c.la 10

    mot cl Let devant linstruction). Les deux membres doivent donc tre de mme type, cest--dire soit numrique, soit chane de caractres.

    2- If Then Else : Si une condition est vraie alors faire ceci sinon cela. Linstruction IF Then Else prend deux formes principales. Sur une seule ligne, elle scrit : If condition Then instructions [Else instructions] Et sur plusieurs lignes : If condition 1 Then

    [bloc-instructions-1] ElseIf condition 2 Then

    [bloc-instructions-2] ELse

    [bloc-instructions-n] End If Exemple : If a > b then Max = a else Max = b If Not a < = b then Max = a else Max = b If i = 1 then Instructions si i vaut 1 ElseIf i = 2 then Instructions si i vaut 2 ElseIf i = 3 then Instructions si i vaut 3 End If

    3- GoTo : A ct de laffectation et du test, le dbranchement inconditionnel faisait partie de la panoplie dinstructions des premiers programmeurs. Le GoTo existe toujours dans Visual Basic, mais on peut la plupart du temps sen passer grce aux autres instructions de contrle qui permettent dobtenir des programmes plus faciles lire. Linstruction GoTo permet de transfrer lexcution du programme en un autre point, identifi par une tiquette (on peut galement utiliser des numros de ligne). Une tiquette est un nom (comme un nom de variable) suivi par : la syntaxe est : GoTo {tiquette-de-ligne | numro-de-ligne} Exemple : GoTo Erreur instructions instructions Erreur : Etiquette instructions

    4- For Next : Linstruction For Next permet dexcuter un bloc dinstructions plusieurs fois en utilisant une variable numrique comme compteur. La syntaxe est la suivante : For compteur = dbut To fin [Step pas]

    [bloc-dinstructions] [Exit For]

  • Visual Basic

    www.developpez.c.la 11

    [bloc-dinstructions] Next [compteur] Exemple : Dim montant (1 to 12) as Single Dim total as Single Dim mois as Integer Total = 0 For mois = 1 To 12 Total = Total + montant (mois) Next Le fonctionnement de cet exemple est le suivant :

    1. Instruction For : donner Mois la valeur 1 2. Excuter les instructions entre For et Next 3. Instruction Next : si Mois est suprieur ou gal 12, passer linstruction

    suivante (fin de boucle) sinon retourner au point 2. La valeur ajoute chaque boucle est 1 par dfaut. On peut la modifier laide du mot

    cl Step. Lexemple suivant donne le mme rsultat que le prcdent, amis le calcul est effectu en commenant par le dernier mois. La valeur 1 est ajoute chaque itration, ce qui quivaut dire que 1 est retir :

    For mois = 12 To 1 Step 1 Total = Total + montant (mois) Next Plusieurs boucles peuvent tre imbriques.

    Exemple : Dim tableau (5, 10) as integer Dim i = 0 as Integer For i = 0 to 5 For j = 0 to 10 Tableau (i, j) = 1 Next j Next i On peut galement quitter la boucle avant la fin grce Exit For . La boucle suivante se termine quand les 12 lments sont initialiss ou quand le total dpasse la valeur 10000 : For Mois = 1 to 12 Total = Total + Montant (Mois) If Total > 10000 Then Exit For Next

    5- Do Loop : Linstruction Do Loop permet dexcuter un bloc dinstructions dans une boucle mais tant quune condition est vraie, ou jusqu ce quune condition devient vraie. Il y a deux faons dutiliser cette instruction : Do [{While | Until } condition]

    [Bloc-dinstructions]

    [Exit Do]

    [Bloc-dinstructions]

  • Visual Basic

    www.developpez.c.la 12

    Loop Ou Do [Bloc-dinstructions] [Exit Do] [Bloc-dinstructions] Loop { While | Until } Condition]

    Exemple :

    Total = 0 Mois = 0 Do While Total < 10000 and mois < = 12 Total = Total + montant (Mois) Mois = Mois + 1 Loop Le fonctionnement on est le suivant :

    1. Si la condition est fausse, aller aprs Loop 2. Sinon excuter les instructions jusqu Loop 3. Retourner 1

    On pourrait galement crire : Total = 0 Mois = 0 Do Until Total > = 10000 or Mois > 12 Total = Total + Montant (Mois) Mois = Mois + 1 Loop La seconde forme est un peu diffrente dans le sens o au moins une boucle est

    toujours effectue, puisque la condition nest teste quen fin de boucle. Par exemple : Do Total = Total + montant (mois) Mois = Mois + 1 Loop While Total < 10000 and Mois < = 12 Le fonctionnement est le suivant :

    1. Excuter les instructions 2. Si la condition est vraie retourner en 1, sinon terminer la boucle.

    Comme pour linstruction For, il est possible dinterrompre la boucle en dehors du test laide de Exit Do qui provoque un dbranchement immdiat linstruction qui suit GloopG. While Wend : Linstruction Whille Wend permet dexcuter un bloc dinstructions dans une boucle tant quune condition est vraie. Elle peut toujours tre remplace par un bloc Do While Loop. La syntaxe est :

    While condition [bloc-dinstructions]

    Wend Lexemple prcdent peut scrire : While Total < 10000 and mois < = 12 Total = Total + Montant (Mois) Mois = Mois + 1 Wend

  • Visual Basic

    www.developpez.c.la 13

    Select Case : Linstruction Select Case permet de slectionner le bloc dinstructions excuter selon la valeur dune variable de contrle. La syntaxe est : Select Case expression-teste [Case liste-dexpression 1] [bloc-dinstructions-1] [Case liste-dexpression 2] [Bloc-dinstructions-2] [Case Else] [bloc-dinstructions-n] End Select Lexpression-teste peut tre une expression numrique ou une chane de caractres. Les liste-dexpressions peuvent tre des suites de valeurs spares par des virgules, des intervalles du type expression to expression, ou un oprateur relationnel introduit par Is. Par exemple : Select Case valeur Case 0 instructions-1 Case 1, 5, 6 instructions-2 Case 2 to 4 instructions-3 Case Is > = 7 instructions-4 Case Else instructions-5 End Select Cela peut se lire de la faon suivante :

    1. Si Valeur est 0, excuter les instructions-1 puis aller linstruction qui suit End Select.

    2. Si Valeur est 1, 5 ou 6, excuter les instructions-2 puis aller linstruction qui suit End Select.

    3. Si Valeur est 2 et 4, excuter les instructions-3 puis aller linstruction qui suit End Select.

    4. Si Valeur est suprieur ou gale 7, excuter les instructions-4 puis aller linstruction qui suit End Select.

    5. Dans les autres cas, excuter les instructions-5 puis aller linstructions qui suit End Select.

    Une instruction Select Cas peut souvent remplacer avantageusement une suite IF Elself, tout en rendant la lecture du programme plus aise.

    IV- Sous-programmes : Lutilisation de ce qui peut tre appel de faon gnrale des sous-programmes permet de rendre la programmation dune application plus structure. Un sous-programme est un bloc dinstructions qui peuvent tre excutes partir dautres parties du programme. Lappel du sous-programme (Call) provoque un dbranchement vers sa premire instruction (comme un GoGo) mais ladresse de linstruction ayant provoqu lappel est mmorise. A la fin du sous-programme, le dbranchement se fait vers cette adresse, cest le retour (return ).

  • Visual Basic

    www.developpez.c.la 14

    Programme appelant Sous-programme

    Call

    Visual Basic comprend deux types dappels de sous-programmes : les appels de lintrieur dune procdure et les appels dune procdure ou dune fonction.

    1- Appel interne GoSub Return : Linstruction Gosub ressemble fortement un GoTo. Comme elle, elle provoque un branchement ltiquette indique. Mais en plus, ladresse de retour (instruction suivant le Gosub) est mmorise, et la rencontre dune instruction Return conduit au retour cette instruction. La syntaxe est : Gosub {tiquette-de-ligne | numro-de-ligne} Exemple : GoSub Calcul Instructions-1 Exit Sub Calcul : Instructions-2 Return

    Lorsque linstruction GoSub est rencontre, les instructions qui suivent ltiquette Calcul (Instructions-2) sont excutes, jusqu la rencontre dun Return. Alors les Instructions-1 sont excutes. On remarquera la prsence dun Exit Sub qui vite dexcuter une seconde fois les instructions do il est appel. Il peut y avoir plusieurs instructions Return dans un sous-programme.

    2- Appel externe Procdures et fonctions : Linstruction GoSub est peu utilise dans Visual Basic. Les sous-programmes sont gnralement des procdures (Sub) ou des fonctions (Function) qui offrent plus de souplesse : lappel peut se faire nimporte o dans un fichier module partir dun autre fichier de lapplication et il est possible de transmettre des paramtres. Une procdure et une fonction se ressemblent beaucoup. Elles suivent toutes les deux le schma prsent prcdemment. Leur seule diffrence se trouve dans le fait que la fonction retourne une valeur, contrairement la procdure. Pour mettre en uvre une procdure ou une fonction, il y a deux phases : La dclaration et lappel. la dclaration se fait selon les syntaxe suivantes : [Public | Static] [Private] Sub nom-global [(liste-darguments)] [bloc-dinstructions] [Exit Sub] [bloc-dinstructions] End Sub Pour une procdcure, et : [Public | Static] [Private] Function nom-global [(liste-darguments)] [As type] [bloc-dinstructions]

  • Visual Basic

    www.developpez.c.la 15

    [Exit Sub] [bloc-dinstructions] [nom-global = expression] End Function Pour une fonction. Dans les deux cas les mots cls Public, Static et Private Signifient :

    Elment Description Public Facultatif. Indique que la procdure Function est accessible toutes les

    autres procdures de tous les modules. Si cet lment est utilis dans un module contenant un lment Option Private, la procdure nest pas disponible en dehors du projet.

    Static Facultatif. Indique que les variables locales de la procdure Function sont conserves entre les appels. Lattribut Static na pas deffet sur les variables dclares en dehors de la procdure Function, mme si elles sont utilises dans cette dernire.

    Private Facultatif. Indique que les procdure Function nest accessible qu dautres procdures du module dans lequel elle a t dclare.

    Dans les deux cas, la liste-darguments la forme suivante :

    [Optional] [ByVal | ByRef] [ParamaArray ] varname [()] [As type] [= defaultvalue]

    Elment Description Optional Facultatif. Indique quun argument nest pas obligatoire. Sil est utilis,

    les arguments suivants doivent galement tre facultatifs et tre dclars aucun argument si le mot cl ParamArray est utilis.

    ByVal Facultatif. Indique que largument est pass par valeur. Moyen permettant de passer une procdure la valeur dun argument plutt que son adresse. La procdure peut de ce fait accder une copie de la variable. La valeur relle de cette dernire nest donc pas modifie par la procdure laquelle elle est passe.

    ByRef Facultatif. Indique que largument est pass par rfrence. ByRef est loption par dfaut dans Visual Basic.

    ParamArray Facultatif. Utilis uniquement comme dernier argument pour indiquer que le dernier argument est un tableau Optional dlments de type Variant. Le mot cl ParamArray, qui permet dindiquer un nombre quelconque darguments, ne peut pas tre utilis avec les mots cls ByVal, ByRef ou Optional.

    Varname Nom de la variable reprsentant largument. respecte les conventions standard daffectation de noms aux variables.

    Type Facultatif. Type de donnes de largument pass la procdure

    Defaultvalue Facultatif. Toute constante ou expression constante. Valide uniquement pour les paramtres Optional.

  • Visual Basic

    www.developpez.c.la 16

    Exemple : Sub AfficheRsultat (Mois as Integer, Titre As string) Instructions End Sub La procdure sappelle AfficheRsultat. Lors de son appel il faut fournir deux paramtres, le premier tant un entier et le second une chane de caractres. Les instructions sont excutes jusqu la rencontre du End Sub qui marque la fin physique de la procdure, ou dune instruction Exit Sub qui provoque un retour. Lappel de cette procdure peut se faire de la faon suivante :

    AfficheRsultat 5, Rsultats de Mai Ou encore : AfficheRsultat (5, Rsultats de Mai ) Les deux syntaxes quivalentes, mais lutilisation de Call implique lemploi des paramtres. Une procdure peut ne pas avoir de paramtres :

    Sub Enregistre () Instructions

    End Sub Lappel se fait alors de la faon suivante : Enregistre Ou : Call Enregistre Une fonction se caractrise par le fait quelle a une valeur de retour dont le type doit tre calcul. Par exemple : Function Racine (n1 As Double, n2 As Double) As Double Instructions Racine = End Function Avant de quitter al fonction, ou dappeler linstruction Exit Function , il faut donc donner une valeur de retour. Lutilisation de la fonction se fait de la faon suivante. N = Racine (3, 4) Les parenthses sont ici obligatoires, mme si aucun paramtre nest dfini pour la fonction. Une procdure ou fonction dfinie dans un fichier feuille peut tre appele partir dune autre procdure ou fonction du mme fichier, mais pas partir des autres fichiers. Tandis que les procdures ou fonctions dfinies dans un module (fichier .BAS) peuvent tre appeles de nimporte o, sauf si le mot Private est utilis lors de la dclaration, ce qui restreint la porte de la procdure au module o elle est dfinie. Exemples : Cette fonction dfinie par lutilisateur renvoie la racine carre de largument qui lui est transmis. Function CalculSquareRoot (NumberArg As Double) As Double If NumberArg < 0 Then Evalue largument Exit Function Quitte pour revenir la procdure appelante.

    Else CalculateSquareRoot = Sqr (NumberArg) Renvoie la racine carr

    EndIf End Function

    Le mot cl ParamArray permet une fonction daccepter un nombre variable darguments. dans la dfinition suivante, FirstArg est transmis par valeur. Function CalcSum (By FirstArg as Integer, ParamArray OtherArgs ())

  • Visual Basic

    www.developpez.c.la 17

    Dim ReturnValue Si la fonction est appele sous la forme : ReturnValue = CalcSum (4, 3, 2, 1) Les variables locales ont les valeurs suivantes : FirstArg = 4, OtherArgs (1) = 3, OtherArgs (2) = 2, etc., en supposant que la limite infrieure par dfaut des tableaux = 1. Les arguments Optional peuvent tre dots de types et de valeurs par dfauts autres que Variant. Si les arguments dune fonction sont dfinis sous la forme : Function MyFunc(MyStr As String, Optional MyArg1 As Integer = 5, Optional MyArg2 = Dolly ) Dim RetVal La fonction peut tre appele de plusieurs faons : RetVal = MyFunc( Bonjour , 2, tous ) Les 3 arguments sont fournis. RetVal = MyFunc( Test , , 5) Les deuximes argument est omis. Arguments un et deux indiqus en utilisant des argument est omis.

    RetVal = MyFunc(MyStr := Bonjour , MyArg1 :=7)

    V- Traitement des chanes de caractres : Les comparaisons de chanes de caractres peuvent se faire en diffrenciant ou non les majuscules de minuscules. Pour cela, il faut utiliser linstruction option Compare dans la section des dclarations dune feuille ou dun module. Pour que les majuscules et les minuscules soient diffrencies, on peut utiliser :

    Option Compare Binary Pour ne pas faire de distinction Option compare Text De plus, certaines instructions utilisent un paramtre pour changer localement loption retenue. Les fonctions suivantes agissent sur des chanes de caractres.

    Fonction Signification Exemple & oprateur Retourne une chane qui est la concatnation

    de deux autres. On peut galement utiliser loprateur + pour la concatnation, mais il peut tre ambigu dans le cas de variants.

    bonjour & messieurs retourne bonjour messieurs

    Space$ Space

    Construit une chane de caractres qui comprend un nombre donn despaces.

    Space$ (20) Retourne une chane de 20 espaces

    String$ String

    Construit une chane de caractres qui comprend un nombre donn dun caractre spcifique.

    String$ (20, "*") String$ (20, 42) Retourne une chane de 20 caractres "*"

    Len Retourne la longueur dune chane de caractres, ou le nombre doctets ncessaires pour le stockage dune variable.

    Len ("coucou !") Retourne 8 Dim d as double : print Len(d) Retourne 8

    Instr Retourne la position dune sous-chane de caractres dans une chane de caractres, en tenant compte ou non des majuscules / minuscules

    Instr ("mon papa est l", "pa") Retourne 5 (1er "pa"), et : Instr (6, "mon papa est l", "pa") Retourne 7 (2e "pa")

    Left$, Left Retourne uen chane de caractres constitue Left$ ("Jean Pierre Durand", 4)

  • Visual Basic

    www.developpez.c.la 18

    des n caractres situs gauche dans une autre chane de caractres.

    Retourne "Jean"

    Right", Right Retourne une chane de caractres constitue des n caractres situes droite dans une autre chane de caractres.

    Right$ ("Jean Pierre Durand", 6) Retourne "Durand"

    Mid$, Mid Retourne une chane de caractres constitue des n caractres situs partir dune position donne dans une autre chane de caractres.

    Mid$ ("Jean Pierre Durand", 6) Retourne "Pierre", et : Mid$ ("Jean Pierre Durand", 6) Retourne "Pierre Durand"

    Mid$, Mid Remplace dans une chane de caractres n caractres dune autre chane de caractres.

    Nom$ = "Jean Pierre Durand" Mid$ (Nom$, 6) = "Michel" Place dans Nom$ "Jean Michel Durand" et : Mid$ (Nom$, 6, 1) = "Michel" Place dans Nom$ "Jean Pierre Durand"

    LTrim$, LTrim

    Retourne une chane de caractres do sont supprims tous les espaces situs gauche dune chane de caractres donne.

    Ltrim$ ("Bonjour") Retourne "Bonjour"

    RTrim$, RTrim

    Retourne une chane de caractres do sont supprims tous les espaces situs droite dune chane de caractres donne.

    RTrim$ ("Bonjour") Retourne "Bonjour"

    Trim$, Trim Retourne une chane de caractres do sont supprims tous les espaces situs gauche et droite dune chane de caractre donne

    Trim$ ("Bonjour") Retourne "Bonjour"

    Lcase$, Lcase Convertit en Minuscules tous les caractres alphabtiques dune chane de caractres.

    Lcase$ ("Bonjour") Retourne "Bonjour"

    Ucase$, Ucase Convertit en majuscules tous les caractres alphabtiques d'ne chane de caractres.

    Ucase$ ("Bonjour") Retourne "Bonjour"

    Lset Place dans une chane de longueur fixe une chane de caractres en la cadrant gauche et en la remplissant droite avec des espaces.

    Dim nom as string * 10 Lset nom = "Coucou" Print ">>" ; Nom ; " Coucou >" ; Nom ; " Coucou

  • Visual Basic

    www.developpez.c.la 19

    2- MSGBOX : Affiche un message dans une bote de dialogue, attend que lutilisateur clique sur un bouton, puis renvoie une valeur de type Integer qui indique le bouton choisi par lutilisateur. MsgBox (prompt[, buttons] [, title] [, helpfile, context]) La syntaxe de la fonction MsgBox comprend les arguments nomms suivants :

    Elment Description Prompt Expression de chane affiche comme message dans la bote de dialogue.

    La longueur maximale de largument prompt est denviron 1 024 caractres selon la largeur des caractres utiliss.

    Buttons Facultatif. Expression numrique qui reprsente la somme des valeurs indiquant le nombre et le type de boutons afficher, le style dicne utiliser, lidentit du bouton par dfaut, ainsi que la modalit du message. Si largument buttons est omis, sa valeur par dfaut est 0.

    Title Facultatif. Expression de chane affiche dans la barre de titre de la bote de dialogue. Si largument title est omis, le nom de lapplication est plac dans la barre de titre.

    Helpfile Facultatif. Expression de chane indiquant le fichier daide utiliser pour fournir une aide contextuelle sur la bote de dialogue. Si largument helpfile est dfini, largument context doit ltre galement.

    Context Facultatif. Expression indiquant le numro de contexte attribu par lauteur de laide la rubrique approprie. Si largument context est dfini, largument helpfile doit ltre galement.

    Valeur : Largument buttons prend les valeurs suivantes :

    Constante Valeur Description VbOKOnly 0 Affiche le bouton OK uniquement VbOKCancel 1 Affiche les boutons OK et Annuler VbAbortRetryIgnore 2 Affiche le bouton Abandonner, Ressayer et Ignorer VbYesNoCancel 3 Affiche les boutons Oui, Non et Annuler VbYesNo 4 Affiche les boutons Oui et Non VbRetryCancel 5 Affiche les boutons Ressayer et Annuler VbCritical 16 Affiche licne Message critique VbQuestion 32 Affiche licne Requte davertissement VbExclamation 48 Affiche licne Message davertissement VbInformation 64 Affiche licne Message dinformation VbDefaultButton1 0 Le premier bouton est le bouton par dfaut VbDefaultButton2 256 Le deuxime bouton est le bouton par dfaut VbDefultButton3 512 Le troisime bouton est le bouton par dfaut VbDefaultButton4 768 Le quatrime bouton est le bouton par dfaut VbApplicationModal 0 Bote de dialogue modale. Lutilisateur doit rpondre

    au message affich dans la zone de message avant de pouvoir continuer de travailler dans lapplication en cours.

  • Visual Basic

    www.developpez.c.la 20

    VbSystemModal 1096 Modal systme. Toutes les applications sont interrompues jusqu ce que lutilisateur rponde au message affich dans la zone de message

    Valeurs renvoyes :

    Constante Valeur Bouton VbOK 1 OK

    VbCancel 2 Annuler VbAbort 3 Abondonner VbRetry 4 Ressayer VbIgnore 5 Ignorer VbYes 6 Oui VbNo 7 Non

    Exemple : Dim Msg, Style, Title, Help, Ctxt, Response, MyString Msg = Souhaitez-vous continuer ? Dfinit le message Style = vbYesNo + vbCritical + vbDefautButton2 Dfinit les boutons Title = Dmonstration de MsgBox Dfinit le titre

    Help = DEMO.HLP Dfinit le fichier daide Ctxt = 1000 Dfinit le contexte de la rubrique Response = MsgBox (Msg, Style, Title, Help, Ctxt) Affiche le message If Response = vbYes Then Lutilisateur a choisit Yes

    MyString = Yes Effectue une Action Else Lutilisateur a choisi No. MyString = No Effectue uen action End If

    VI- Cration dune interface utilisateur : Linterface est peut-tre la partie la plus importante dune application mais elle est aussi celle que lon remarque le plus. Pour les utilisateurs, elle reprsente lapplication et certains ne doivent mme pas savoir quun programme est excut en arrire-plan. On distingue deux principaux styles dinterfaces : linterface simple document (SDI) et linterface multidocument (MDI). Lapplication WordPad fournie avec Microsoft Windows est un exemple dinterface SDI. En effet, cette application ne vous permet douvrir quun seul document la fois ; vous devez fermer un pour en ouvrir un autre. Par contre Microsoft Excel et Microsoft Word sont des interfaces MDI qui permettent dafficher simultanment plusieurs documents, chaque document saffichant dans sa propre fentre. Linterface multidocument (MDI) vous permet de crer une application qui gre plusieurs feuilles lintrieur dune seule feuille conteneur. Une application MDI permet lutilisateur daffiche simultanment plusieurs documents, chaque document possdant sa propre fentre. Les documents ou fentre filles saffichent dans une fentre mre, qui fournit lespace de travail ncessaire toutes les fentres filles de lapplication. Une application MDI permet lutilisateur dafficher simultanment plusieurs documents, chaque document possdant sa propre fentre. Les documents ou fentres filles saffichent dans une fentre mre, qui fournit lespace de travail ncessaire toutes les fentres filles de lapplication. Les fentres filles sont incluses dans les limites de la zone de la fentre mre, lorsque vous rduisez celle-ci toutes les fentres de documents sont aussi rduites ; seule licne de la fentre mre apparat dans la barre des tches.

  • Visual Basic

    www.developpez.c.la 21

    Une feuille fille est une feuille ordinaire dont la proprit MDIChild a la valeur True. Votre application peut inclure plusieurs feuilles filles MDI de types similaires ou diffrents. Une feuille MDI standard est semblable une feuille ordinaire, mais vous ne pouvez pas y placer directement un contrle, sauf si ce dernier est dot de la proprit Align (tel quun contrle PictureBox) ou sil na pas dinterface visible (tel quun contrle Timer).

    1- Caractristiques des feuilles MDI en mode excut ion : Lorsque vous rduisez une feuille fille, son icne saffiche dans la feuille MDI et non dans la barre des tches. Lorsque vous agrandissez une feuille fille, le libell est associ celui de feuille MDI, et il saffiche dans la barre de titre de cette dernire. Si vous dfinissez la proprit AutoShowChildren, vous pouvez afficher automatiquement les feuilles lors de leur chargement (True), ou les charger sans les afficher (false). Les menus actifs dune feuille fille saffichent, le cas chant, dans la barre de menus de la feuille MDI, et non dans la feuille fille.

    2- Crateurs de menus : Le crateur de menu permet de crer des menus et des barres de menu, dajouter de nouvelles commandes aux menus existants, de remplacer les commandes de menu existantes par vos propres commandes, dajouter et de supprimer des menus et des barres de menu existants. Pour afficher le Crateur de menus, cest partir du menu Outils, loption Crateur de menus. Les deux proprits de contrles de menu les plus importantes sont les suivantes : Name : non utilis pour dsigner un contrle de menu dans un code. Caption : Texte qui saffiche dans le contrle. 1. Dans la zone de texte Caption, entrez le premier titre de menu que vous voulez afficher

    dans la barre de menus. Insrez une perlute (&) avant la lettre que vous voulez dfinir comme touche daccs rapide pour cette lment de menu. La lettre est automatiquement souligne dans le titre du menu.

    2. Dans la zone de texte Name, entrez le nom que vous voulez utiliser pour dsigner le contrle de menu dans le code.

    3. Cliquez sur les flches gauches ou droite pour modifier le niveau de retrait du contrle ; dans le crateur de menu chaque niveau de retrait est prcd de quatre points (.).

    4. Slectionnez suivant pour crer un autre contrle de menu ou cliquez sur insrer pour ajouter un contrle de menu entre les contrles existants.

  • Visual Basic

    www.developpez.c.la 22

    5. Pour affecter une touche de raccourci un lment de menu, slectionnez une touche de fonction ou une combinaison de touches dans la zone de liste modifiable Shortcut.

    6. Loption Index permet de crer un groupe de contrles de menu : cest un ensemble dlments dun mme menu qui partagent le mme nom et les mmes procdures dvnements.

    7. La proprit Checked permet dinsrer une coche dans un menu pour indiquer lutilisateur ltat dune condition active/dsactive.

    8. La proprit Enabled permet de dsactiver un menu et vous pouvez lactiver au niveau de votre code. Exemple la commande coller du menu dition est dsactiv.

    9. La proprit Visible permet dafficher ou de masquer un contrle de menu. Le fait dactiver la coche permet dafficher le contrle de menu par contre si on la dsactive le contrle sera masquer.

    10. La proprit WindowsList est utilise au niveau dun contrle de menu dune feuille MDI ou dune feuille fille MDI pour afficher la liste des feuilles filles ouverte.

    3- Organisation des feuilles filles : Certaines applications affichent dans un menu des actions telles que Mosaque, Cascade et Rorganiser les icnes, avec la liste des feuilles filles ouvertes. La mthodes Arrange permet de rorganiser les feuilles filles dans une feuille MDI. Vous pouvez afficher des feuilles filles en cascade, superposes horizontalement ou sous la forme dicnes de feuilles filles disposes le long de la partie infrieure de al feuille MDI. Private sub mnucascade_click () FrmMDI.Arrange Vbcascade Dispose les feuilles filles en cascade End Sub Private sub mnuTileH_click () FrmMDI.Arrange VbTileHorizontal Dispose les feuilles filles en mosaque (horizontale) End Sub Private sub mnuTileV_click () FrmMDI.Arrange VbTileVertical Dispose les feuilles filles en mosaque (Verticale) End Sub Private sub mnuArrange_click () FrmMDI.Arrange VbArrangeIcons Organisez toutes les icnes des feuilles filles End Sub

    4- Les menus contextuels : Un menu contextuels est un menu flottant qui saffiche sur une feuille, indpendamment de la barre de menus. Comme les lments de ce menu dpendent de lendroit o le pointeur a t plac lors du clic du bouton droit de al souris, ce type de menu est appel menu contextuel. Le code suivant affiche le menu mnufile lorsque lutilisateur clique sur une feuille avec le bouton droit de la souris. Vous pouvez utiliser lvnement MouseUp ou MouseDown pour dtecter le moment o lutilisateur clique sur le bouton droit de al souris, bien que MouseUp soit lvnement standard : Private Sub Form_MouseUp (Button as Integer, Shift as Integer, X as Single, Y as Single) If Button = 2 tne Vrifie si le bouton droit de la souris a t actionn. PopupMenu mnufile Affiche le menu fichier en tant que menu contextuel End If End Sub

  • Visual Basic

    www.developpez.c.la 23

    Les contrles de Visual Basic :

    Catgories de contrles : Les trois catgories principales de contrles de Visual Basic sont les suivantes :

    Contrles intrinsques : il sagit, par exemple, des contrles CommandButton et Frame. Ces contrles intrinsques figurent en permanence dans la bote outils, la diffrence des contrles ActiveX et des objets insrables qui peuvent tre retirs ou ajouts la bote outils.

    Contrles ActiveX : ils existent sous forme de fichiers spars dots de lextension .oxc. Ces fichiers renferment lensemble des contrles disponibles dans toutes les ditions de Visual Basic (contrles DBGrid, DBCombo, DBList, etc.) et ceux utiliss seulement dans les ditions Professionnelle et Entreprise (tels que les contrles listView, Toolbar, Animation et SSTab).

    Objets insrables : il peut sagir dune feuille de calcul Microsoft Excel contenant la liste des employs de votre socit ou dun objet Calendrier Microsoft Project contenant des informations de planification relatives un projet. Etant donn que ces objets peuvent tre ajouts dans la bote outils, ils sont considrs comme des contrles.

    Les groupes de contrles : Un groupe de contrles est un ensemble de contrles de mme type et portant le mme nom. Les contrles dun groupe partagent galement les mmes procdures dvnement. un groupe de contrles comprend au moins un lment et peut comporter autant dlments que le permettent les ressources et la mmoire de votre systme. Lajout de groupes de contrles consomme moins de ressources que lajout de plusieurs contrles individuels de mme type une feuille au moment de la cration. Vous pouvez aussi utiliser des groupes de contrles si vous souhaitez que plusieurs contrles utilisent un code commun. Pour crer un groupe de contrles, dessinez un contrle, cliquez sur copier puis sur coller. Visual Basic affiche une bote de dialogue vous demandant de confirmer la cration du groupe de contrles, choisissez oui pour confirmer lopration. Le nouveau contrle prend la valeur dindex 1. Le premier contrle que vous avez dessin possde la valeur 0. CheckBox : Un contrle CheckBox affiche une coche lorsque la case cocher correspondante est active ; la disparat lorsque la case cocher est dsactive. Les cases cocher offrent lutilisateur le choix entre Vrai/Faux ou Oui/Non. Vous pouvez utiliser des groupes de cases cocher pour afficher plusieurs possibilits dont lutilisateur peut slectionner une ou plusieurs. Vous pouvez galement dfinir la valeur dune case cocher par programme, laide de la proprit Value. Les contrles CheckBox est OptionButton fonctionnent de la manire similaire, une diffrence importante prs : vous pouvez activer autant de cases cocher (CheckBox) que vous le souhaitez sur une mme feuille, tandis quil nest possible dactiver quune seule case doption (OptionButton) la fois dans un groupe. Pour afficher un texte en regard dune case cocher, dfinissez sa proprit Caption. Check1.caption = Windows 95 La proprit Value indique ltat de la case : active, dsactive ou grise.

  • Visual Basic

    www.developpez.c.la 24

    Etat Valeur Constante Dsactiv 0 VbUnchecked Activ 1 VbChecked Gris 2 VbGrayed ComboBox : Un contrle ComboBox runit les fonctionnalits dune zone de texte et celles dune zone de liste. Ce type de contrle permet lutilisateur de procder une slection soit en tapant du texte (TextBox) dans la partie modifiable, soit en slectionnant lun des lments dans la partie (ListBox). Styles des listes : Il existe trois styles de listes modifiables :

    Style Valeur Constante Liste modifiable droulante 0 VbComboDropDown Liste Modifiable simple 1 VbComboSimple Zone de liste droulante 2 VbComboDropDownList Liste modifiable droulante : Cette liste donne la possibilit lutilisateur de taper directement du texte ou de cliquer sur la zone afin douvrir une liste de choix. Liste modifiable simple : La liste modifiable simple affiche en permanence la liste de tous les choix possibles. Une barre de dfilement vertical est automatiquement insre lorsque le nombre dlments est suprieur au nombre dlments pouvant tre affichs dans la liste. Zone de liste droulante : Une zone de liste droulante ressemble une zone de liste normale, elle affiche une liste doptions parmi lesquelles lutilisateur doit choisir. Toutefois contrairement la liste modifiable droulante, on ne peut pas taper du texte dans la zone. Ajout dlment dans une liste : Pour ajouter des lments dans un contrle ComboBox, on utilise la mthode AddItem. Combo1.AddItem Technicien en informatique Combo1.AddItem Technicien en Bureautique Pour ajouter un lment un endroit prcis, spcifiez une valeur dindex la suite de llment ajouter. Par exemple, la ligne suivante insre Tib en premire position et repositionne les lments qui suivent : Combo1.AddItem Tib , 0 Vous pouvez galement ajouter des lments la liste en utilisant la proprit List au moment de la cration. Tri dune liste : Afin de trier les lments dune liste par ordre alphabtique, en affecte la valeur True la proprit Sorted. Combo.Sorted = True

  • Visual Basic

    www.developpez.c.la 25

    Suppression des lments dune liste : Linstruction RemoveItem permet de supprimer des lments dans une liste modifiable. Cette mthode dispose dun argument, index, qui sert spcifier llment supprimer : Combo1.RemoveItem 2 Pour supprimer tous les lments dune liste modifiable, utilisez la mthode Clear. Combo1.Clear ListIndex : La proprit ListIndex dfinit ou renvoie lindex de llment slectionn dans le contrle et nest disponible quau moment de lexcution. la valeur de cette proprit est 0 si le premier lment de al liste est slectionn, 1 si le deuxime lments est slectionn, et ainsi de suite. La valeur de la proprit ListIndex est 1 si aucun lment nest slectionn. ListCount : Pour connatre le nombre dlments contenus dans une liste modifiable, on utilise la proprit ListCount. Text1.Text = Combo1.ListCount CommandButton : Le contrle CommandButton permet lutilisateur de commencer ou dinterrompre une opration, ou encore dy mettre fin. Lorsque le bouton de commande (CommandButton) correspondant est slectionn, il semble senfoncer lcran, ce qui explique pourquoi on appelle parfois les boutons de commande boutons-poussoirs . Lorsque lutilisateur clique sur un bouton, il appelle une commande, crite dans la procdure dvnement Click associe au bouton. Pour afficher un texte sur un bouton de commande, dfinissez sa proprit Caption Commande1.Caption = Ajouter La proprit Caption permet de crer des touches de raccourci correspondant vos boutons de commande. Pour ce faire, vous ajoutez un signe & devant la lettre qui sera utilise comme touche daccs rapide. Par exemple, pour crer une touche de raccourci pour le bouton ajouter, vous ajoutez un signe & devant la lettre A . Command1.Caption = &Ajouter A lexcution, la lettre A sera souligne et lutilisateur pourra slectionner le bouton de commande en appuyant simultanment sur les touche ALT + A Lutilisateur peut toujours cliquer sur un bouton de commande pour choisir . pour permettre lutilisateur de le slectionner en appuyant directement sur la touche ENTREE, affectez la valeur True la proprit Default du contrle CommandButton correspondant. Pour permettre lutilisateur de le slectionner en appuyant sur la touche ECHAP, affectez la valeur True sa proprit Cancel. Contrle Data : Le contrle Donnes (Data) est utilis pour crer des applications simples de base de donnes sans crire aucun code. De plus, il permet de crer des applications plus compltes qui vous octroient un plus haut niveau de contrle sur vos donnes. Les contrles Zone de liste dpendante (DBList ), Liste modifiable dpendante (DBGrid ) et Microsoft FlexGrid (MSFlexGrid ) sont tous capables de grer des jeux denregistrements lorsquils sont lis un contrle Data. Grce ces contrles, il est possible dafficher et de manipuler simultanment plusieurs enregistrements.

  • Visual Basic

    www.developpez.c.la 26

    DriveListBox : La liste de lecteurs (DriveListBox) est une zone de liste droulante permettant lutilisateur de slectionner un lecteur valide au moment de lexcution. ce contrle affiche la liste de tous les lecteurs valides du systme de lutilisateur. Si lutilisateur slectionne un nouveau lecteur dans la liste celui-ci apparat en haut de la zone de liste. Vous pouvez utiliser du code pour examiner la proprit Drive de la liste de lecteurs et dterminer quel est le lecteur slectionn. Vous pouvez galement spcifier le lecteur qui doit apparatre en haut de la zone de liste laide de linstruction suivante : Drive1.Drive = C:\ La liste de lecteurs afficher les lecteurs valides disponibles. Le fait de choisir un lecteur dans cette zone de liste ne permet pas automatiquement de changer de lecteur au niveau du systme dexploitation en la spcifiant comme argument dans linstruction ChDrive : ChDrive Drive1.Drive DirListBox : La liste de rpertoires (DirListBox ) affiche larborescence du lecteur en cours sur le systme de lutilisateur, en commenant par le dossier de plus haut niveau. Lorsque larborescence saffiche, le nom du dossier en cours apparat en surbrillance et en retrait par rapport aux dossiers de niveau suprieur dans la hirarchie, jusqu la racine. La proprit Path de la liste de rpertoires permet de dfinir ou de renvoyer le dossier en cours dans la zone de liste (ListIndex = -1). Vous pouvez galement affecter la proprit Drive de la liste de lecteurs la proprit Path de la liste de rpertoires : Dir1.Path = Drive1.Drive Une fois cette affectation excute, la liste de rpertoires affiche tous les dossiers et sous-dossiers disponibles sur ce lecteur. Par dfaut, la liste de rpertoires affiche galement tous les dossiers situs au-dessus du dossier en cours du lecteur affect la proprit Dir1.Path, ainsi que tous les sous-dossiers situs immdiatement au-dessous. Pour dfinir le dossier de travail en cours, utilisez linstruction ChDir . Par exemple, linstruction suivante dfinit comme dossier en cours celui qui est affich dans la liste de rpertoires : ChDir Dir1.Path FileListBox : Un contrle FileListBox (Liste de fichiers) permet de rpertorier les fichiers contenus dans le dossier spcifi par la proprit Path au moment de lexcution. A laide de linstruction suivante, vous pouvez afficher tous les fichiers se trouvant dans le dossier et le lecteur en cours : File.Path = Dir1.Path Visual Basic accepte le caractre gnrique ?. Par exemple, la spcification, ? ? ?.txt permet dafficher les fichiers dont le nom de base se compose de trois caractres et qui possdent lextension.txt. Frame : Un contrle Frame permet de regrouper des contrles de manire aisment identifiable. On peut aussi utiliser ce contrle pour subdiviser fonctionnellement une feuille, en vue de sparer, par exemple, des groupes de contrles OptionButton. Pour regrouper des contrles, dessinez dabord le contrle Frame, puis dessinez les contrles lintrieur. Cela vous permet de dplacer simultanment le cadre et les contrles

  • Visual Basic

    www.developpez.c.la 27

    quil contient. Si vous dessinez un contrle hors dun cadre, puis tentez de lamener lintrieur de ce cadre, le contrle sera superpos et non intgr au cadre. Cous devrez alors dplacer sparment le cadre et les contrles. Pour donner un titre au contrle Frame vous pouvez changer au niveau de la proprit Caption. HScrollBar VScrollBar : Les barres de dfilement sont des contrles permettant de parcourir rapidement une longue liste dlment ou un grand nombre dinformations. Elles peuvent galement indiquer la position courante sur une chelle. Vous pouvez utiliser une barre de dfilement comme dispositif dentre de donnes ou comme indicateur de vitesse ou de quantit pour rgler, par exemple, le volume sonore dun jeu sur ordinateur ou pour visualiser le temps coul lors dun processus minut. Les barres de dfilement utilisent les vnements Scroll et Change pour surveiller le mouvement du curseur le long de la barre de dfilement.

    Evnement Description Change Se produit aprs tout mouvement du curseur de dfilement.

    Scroll Se produit lors du dplacement du curseur. Ne se produit pas si

    lutilisateur clique sur les flches de dfilement ou sur la barre de dfilement.

    Lvnement Scroll permet daccder la valeur de la barre de dfilement mesure que lutilisateur dplace le curseur. Lvnement Change se produit une fois quil relche le curseur ou clique sur la barre ou les flches de dfilement. La proprit Value (dont la valeur par dfaut est 0) est une valeur spcifie sous forme dentier correspondant la position du curseur dans la barre de dfilement. Lorsque la position du curseur de dfilement est dfinie la valeur minimale, le curseur se place la position la plus gauche (pour les barres de dfilement horizontal) ou la plus haute (pour les barres de dfilement vertical). Lorsque la position du curseur de dfilement est dfinie sa valeur maximale, le curseur se place lextrme droite ou tout en bas de la barre. De mme, la valeur correspondant au milieu de la plage place le curseur au milieu de la barre de dfilement. Lutilisateur peut non seulement cliquer avec la souris pour modifier la valeur de la barre de dfilement, mais peut galement faire glisser le curseur de dfilement jusqu nimporte quel point de la barre. La valeur rsultante dpend de la position du curseur, mais elle se trouve systmatiquement dans la plage comprise entre les valeurs des proprits Min et Max dfinies par lutilisateur. Le proprit LargeChange spcifie la valeur de la modification qui survient lorsque lutilisateur clique dans la barre de dfilement tandis que la proprit SmallChange spcifie la valeur de la modification qui survient lorsque lutilisateur clique sur les flches situes aux extrmits de la barre de dfilement. La proprit Value de la barre de dfilement augmente ou diminue selon les valeurs affectes aux proprits LargeChange et SmallChange. Vous pouvez positionner le curseur de dfilement au moment de lexcution en affectant la proprit Value une valeur comprise entre 0 et 32767 inclus. Image :

  • Visual Basic

    www.developpez.c.la 28

    Ce contrle permet dafficher une image. Ce contrle affiche des graphiques dans les formats suivants : image bitmap, icne, mtafichier, ainsi que des mtafichiers tendus et des fichiers JPEG ou GIF. Les images peuvent tre charge dans le contrle image au moment de la cration en slectionnant la proprit Picture dans la fentre proprits du contrle, ou au moment de lexcution en utilisant la proprit Picture et la mthode LoadPicture. Image1.Picture = LoadPicture ( C : \Windows \ Winlogo.bmp ) Quand une image est charge dans le contrle Image, celui-ci est redimensionn la taille de limage, quelle que soit sa taille lorsquil a t dessin sur la feuille. Pour effacer le graphique dans le contrle Image, utilisez la mthode LoadPicture sans spcifier de nom de fichier. Par exemple : Image1.Picture = LoadPicture La proprit Stretch dtermine si limage sagrandit automatiquement lorsque le contrle Image est redimensionn au moment de la cration. Si la valeur True est affecte la proprit Stretch, limage charge dans le contrle Image par lintermdiaire de sa proprit Picture est agrandie automatiquement. Label : Un contrle Label est un contrle graphique qui permet dafficher du texte que lutilisateur ne peut pas modifier directement. Il peut tre utilis aussi pour afficher des informations au moment de lexcution en rponse un vnement ou un processus de votre application. Pour modifier le texte afficher dans un contrle Label, utilisez la proprit Caption. Au moment de la cration, vous pouvez dfinir cette proprit en la slectionnant dans la fentre Proprits du contrle. Ou bien au moment de lexcution en crivant : Label1.Caption = Type de Rsolution Par dfaut, lorsque le texte de la proprit Caption excde la largeur du contrle, il revient automatiquement la ligne, et il est tronqu sil dpasse la hauteur du contrle. Pour que le contrle soit automatiquement redimensionn en fonction de son contenu, affectez la valeur True la proprit AutoSize. Le contrle stend en longueur afin de sadapter au contenu complet de la proprit Caption. Pour que le contenu revienne automatiquement la ligne et stende en hauteur, affectez la valeur True la proprit WordWrap. Line : Un contrle Line est un contrle graphique affich sous la forme dune ligne horizontale, verticale ou diagonale. Vous pouvez utiliser un contrle Line au moment de la cration afin de tracer des lignes sur des feuilles. Vous pouvez contrler la position, la longueur, la couleur et le style des contrles. La couleur et le style dun segment sont dfinis laide des proprits BorderStyle et BorderColor . La proprit BorderStyle, propose six styles de ligne :

    Transparent (0 Transparent) Continu (1 Solid) Tiret (2 Dash) Point (3 Dot) Tiret Point (4 Dash-Dot) Tiret Point Point (5 Dash-Dot-Dot) Intrieur plein (6 Inside Solid)

  • Visual Basic

    www.developpez.c.la 29

    La couleur est dtermine par la proprit BorderColor dans la fentre Proprits du contrle Line. ListBox : Un contrle ListBox affiche une liste dans laquelle lutilisateur peut slectionner un ou plusieurs lments. Si le nombre dlments est trop grand pour tenir dans la zone affiche, une barre de dfilement lui est automatiquement ajoute. Pour ajouter des lments dans une zone de liste, utilisez la mthode AddItem , dont la syntaxe est la suivante : List1.AddItem Maroc Pour ajouter un lment un endroit prcis, spcifiez une valeur dindex la suite de llment ajouter .Ex : List1.AddItem Algrie , 0 La valeur 0, spcifie le premier lment de la liste. Vous pouvez spcifier que les lments dune liste soient tris par ordre alphabtique en affectant la valeur True la proprit Sorted. Le tri seffectue sont tenir compte des majuscules et minuscules. Pour supprimer des lments dune zone de liste, utilisez la mthode RemoveItem en spcifiant lindex de llment supprimer : List1.RemoveItem 0 Pour supprimer tous les lments dune liste, utilisez la mthode Clear : List1.Clear La manire la plus simple pour connatre la valeur de llment slectionn dans une liste consiste utiliser la proprit Text. La proprit Text correspond toujours un lment de la liste que lutilisateur slectionne au moment de lexcution. Si vous souhaitez connatre la position de llment slectionn dans une liste, utilisez la proprit ListIndex . Cette proprit dfinit ou renvoie lindex de llment slectionn dans le contrle et nest disponible quau moment de lexcution. si aucun lment nest slectionn, la proprit ListIndex a la valeur 1. La proprit ListIndex du premier lment de la liste a la valeur 0. Pour renvoyer le nombre dlments contenus dans une liste, utilisez la proprit ListCount . Text1.Text = Lixt1.LixtCount La proprit Columns vous permet de spcifier le nombre de colonnes dune zone de liste. Cette proprit peut prendre les valeurs suivantes :

    Valeur Description 0 Zone de liste une colonne avec dfilement vertical 1 Zone de liste une colonne avec dfilement horizontal

    > 1 Zone de liste multicolonne avec dfilement horizontal Vous pouvez permettre aux utilisateurs de slectionner plusieurs lments dans une liste en utilisant la proprit MultiSelect, qui peut prendre les valeurs suivantes :

    Valeur Type de Slection Description 0 None Zone de liste standard 1 Simple Un clic ou lappui sur ESPACE permet de

    slectionner ou de dslectionner des lments supplmentaires dans la liste

    2 Extended La combinaison MAJ + clic ou MAJ + une touche de direction permet dtendre la slection afin dy

  • Visual Basic

    www.developpez.c.la 30

    inclure tous les lments compris entre llment slectionn et celui slectionn prcdemment. CTRL + clic permet de slectionner un lment dans la liste.

    Option Button : Un contrle OptionButton affiche une option qui peut tre active ou dsactive. Dans un groupe de boutons doption, lutilisateur ne peut effectuer quune seule slection. Bien que les contrles OptionButton et CheckBox semblent fonctionner de manire similaire, il existe entre eux une diffrence importante : lorsquun utilisateur slectionne une case doption, les autres cases du mme groupe sont automatiquement dsactives, ce qui nest pas le cas des cases cocher, dont lutilisateur peut slectionner un nombre illimit. Pour changer le label dun bouton doption vous pouvez utiliser la proprit Caption : Option1.Caption = Penyium La proprit Value indique si le bouton est slectionn. Si tel est le cas, la valeur devient True. OptOui.Value = True PictureBox : Un contrle PictureBox peut afficher un lment graphique issu dune image bitmap, dune icne ou dun mtafichier, ainsi que dun mtafichier tendu ou de fichiers JPEG ou GIF. Llment graphique est dcoup si le contrle nest pas assez grand pour afficher limage complte. Le contrle PictureBox est similaire au contrle Image dans le sens quils peuvent tre utiliss pour afficher des graphiques dans lapplication et quils grent tous deux les mmes formats graphiques. Toutefois, le contrle PictureBox contient des fonctionnalits qui nexistent pas dans le contrle Image, par exemple, la possibilit de jouer le rle de conteneur pour les autres contrles et de grer des mthodes graphiques. Un contrle PictureBox peut tre utilis pour regrouper des contrles OptionButton et pour afficher les donnes de sortie des mthodes graphiques et les textes crits au moyen de la mthodes Print. Pour que la zone dimage dun contrle PictureBox se redimensionne automatiquement de manire pouvoir afficher lensemble du graphisme, affectez la valeur True sa proprit AutoSize. Il est possible de charger des images dans le contrle PictureBox au moment de la cration, en slectionnant la proprit Picture dans la fentre Proprits du contrle, ou au moment de lexcution en utilisant la proprit Picture et la mthode LoadPicture. Picture1.Picture = LoadPicture ( C:\Windows\Winlogo.bmp ) PictureBox est Data sont les seuls contrles Visual Basic standard que vous pouvez placer dans la zone interne dune feuille MDI. Vous pouvez utiliser un contrle PictureBox pour regrouper des contrles en haut ou en bas de la zone interne afin de crer une barre doutils ou une barre dtat. Comme les feuilles, les zones dimage peuvent tre utilises pour afficher les donnes en sortie des mthodes graphiques telles que Circle, Line et Point. Par exemple, vous pouvez utiliser la mthode Circle pour dessiner un cercle dans une zone dimage en affectant la valeur True la proprit AutoRedraw du contrle. Picture1.AutoRedraw = True Picture1.Circle (1200, 1000), 750

  • Visual Basic

    www.developpez.c.la 31

    Le fait daffecter la valeur True la proprit AutoRedraw permet aux donnes en sortie de ces mthodes dtre dessins dans le contrle et automatiquement redessines quand le contrle PictureBox est redimensionn ou affich de nouveau aprs avoir t masqu par un autre objet. Vous pouvez utiliser le contrle PictureBox pour afficher du texte en sortie en utilisant la mthode Print et en affectant la valeur True la proprit AutoRedraw. Par exemple : Picture1.Print Bonjour !CasaBlanca Shape : Le contrle Shape est un contrle graphique qui saffiche sous forme de rectangle, de carr, dellipse, de cercle, de rectangle arrondi ou de carr arrondi. Vous pouvez dfinir le style, la couleur, le style de remplissage, la couleur et le style de bordure de toutes les formes que vous dessinez sur une feuille. La proprit Style du contrle Shape vous propose six formes prdfinies.

    Forme Style Constante Rectangle 0 VbShapeRectange Carr 1 VbShapeSquare Ovale 2 VbShapOval Cercle 3 VbShapCircle Rectangle coins arrondis 4 VbShapeRoundedRectangle Carr coins arrondis 5 VbShapeRoundedSquare Vous pouvez utiliser les proprits FillStyle et BorderStyle pour dfinir le style de remplissage et de bordure de toutes les formes que vous dessinez sur une feuille.

    La proprit FillStyle, comme la proprit Style, vous propose une varit de motifs de style de remplissage prdfinis : Plein, transparent, ligne horizontale, ligne verticale, Diagonale montante, Diagonale descendante, Croix et Croix diagonale.

    La proprit BorderStyle vous propose une varit de style de bordure prdfinis : Transparent, Continu, Tiret, Point, Tiret-Point, Tiret-Point-Point et intrieur plein.

    Les proprits BackColor et FillColor vous permettent dajouter des couleurs une forme et sa bordure. TextBox : Un contrle TextBox, parfois appel champ ddition ou contrle ddition, affiche des informations entres au moment de la cration, tapes par lutilisateur ou affectes au contrle au moment de lexcution. Le texte entr dans le contrle TextBox est contenu dans la proprit Text. Par dfaut, vous pouvez entrer jusqu 2048 caractres dans une zones de texte. Si vous affectez la valeur true la proprit MultiLine du contrle, vous pouvez entrer jusqu 32 Ko de texte. Lorsque la taille du texte excde les limites du contrle, vous pouvez affecter la valeur True la proprit multiline du contrle pour grer automatiquement le renvoi du texte la ligne et ajouter des barres de dfilement horizontal, vertical, ou les deux, en dfinissant la proprit ScrollBars. Quand vous affectez la valeur true la proprit MultiLine , vous pouvez aussi ajuster lalignement du texte sur aligner gauche (Left Justify ), centrer (center) ou ligner droite (Right Justify). Par dfaut, le texte est align gauche. I la valeur False est affecte la proprit MultiLine , la dfinition de la proprit Alignment na aucun effet.

  • Visual Basic

    www.developpez.c.la 32

    La proprit PasswordChar spcifie le caractre qui apparat dans la zone de texte. Par exemple, si vous souhaitez que la zone de texte pour mot de passe contienne des astrisques, affectez la valeur* cette proprit dans la fentre Proprits. Quel que soit le caractre que lutilisateur tape dans la zone de texte, un astrisque apparat. La proprit MaxLength vous permet de dterminer le nombre de caractres pouvant tre taps dans la zone de texte. Si ce nombre est dpass, un bip sonore est mis et la zone naccepte plus aucun caractre. Vous pouvez utiliser la proprit Locked pour empcher les utilisateurs de modifier le contenu dune zone de texte. Affectez la valeur True cette proprit pour permettre aux utilisateurs de faire dfiler et de mettre en surbrillance le contenu dune zone de texte sans pour autant autoriser les modifications. Timer : Les contrles Minuterie (Timer ), indpendants de lutilisateur, ragissent au passage du temps. Vous pouvez les programmer pour dclencher certaines actions intervalles rguliers. Une rponse type de la minuterie consiste vrifier lhorloge systme pour voir si le moment est venu deffectuer une tche donne. Les minuteries savrent galement utiles pour dautres types de traitement darrire-plan. Un contrle Timer possde deux proprits principales.

    Proprit Valeur Enabled Si vous souhaitez que la minuterie se dclenche ds le chargement de la

    feuille, affectez la valeur True cette proprit. Dans le cas contraire, laissez cette proprit dfinie sur la valeur False. Vous pouvez choisir quun vnement extrieur (le clic dun bouton de commande, par exemple) dclenche le fonctionnement de la minuterie.

    Interval Nombre de millisecondes entre les vnements de la minuterie

    La proprit Enabled de la minuterie est diffrente de la proprit Enabled des autres objets. Dans la plupart des objets, cette proprit dtermine si lobjet peut rpondre un vnement provoqu par lutilisateur. dans le contrle Timer , le fait daffecter la valeur False la proprit Enabled interrompt le fonctionnement de la minuterie. La proprit Interval dtermine plus la frquence que la dure. La longueur de lintervalle dpend du degr de prcision que vous recherchez. Lintervalle peut tre compris entre 0 et 64767 inclus, ce qui signifie que mme lintervalle le plus long sera de lordre dune minute (64,8 secondes environ). Lexemple suivant permet dafficher au niveau dune tiquette lheure systme en utilisant un contrle Timer dont lintervalle est 1000 (1 seconde) et la proprit Enabled est True. Private Sub Timer1_Timer () Lbltime.Caption = Time End Sub

    VII- Les fichiers Un fichier est constitu dun ensemble de donnes, normalement situes sur disque ou disquette, et identifies par un nom de fichier. Un fichier nest autre quune suite doctets connexes enregistrs sur un disque. Lorsque votre application accde un fichier, elle doit imaginer ce que reprsente ces octets (des caractres, des enregistrements de donnes, des entiers, des chanes, etc.)

  • Visual Basic

    www.developpez.c.la 33

    Une application doit traiter un fichier en trois phases : Ouverture du fichier. Le systme rserve une place en mmoire pour permettre laccs au

    fichier par lapplication. Louverture peut se faire selon plusieurs modes, et elle peut donner lieu la cration du fichier sil nexistait pas. Elle est ralis laide de linstruction Open.

    Traitement du fichier. Ce peut tre des lectures ou des critures de donnes. Il est galement possible de se positionner dans le fichier un endroit quelconque.

    Fermeture du fichier, qui indique au systme quil peut librer la mmoire rserve pour le fichier. La fermeture se fait avec linstruction Close.

    1- Modes de traitement des fichiers : Visual Basic permet de voir le contenu dun fichier de trois faons diffrentes correspondant trois modes daccs. Le mode daccs squentiel est utilis pour la lecture et lcriture de fichiers textes dans

    des blocs continus. Le mode daccs direct o le fichier est constitu denregistrements ayant chacun une

    mme longueur. Chaque enregistrement peut lui - mme tre constitu de plusieurs champs, quil appartient lapplication de traiter correctement.

    Le mode daccs binaire o le fichier est simplement constitu dun suite doctets sans liens logiques.

    Laccs squentiel t conu pour les fichiers texte sans mise en forme. Chaque caractre du fichier est cens reprsenter un caractre de texte ou une squence de mise en forme du texte. Les donnes sont stockes sous forme de caractres ANSI. Un fichier ouvert pour accs direct est cens tre constitu dun ensemble denregistrements de mme longueur. Grce aux types dfinis part lutilisateur, vous pouvez crer des enregistrements constitus de nombreux champs pouvant mme possder chacun un type de donnes diffrent. Les donnes sont stockes sous forme dinformations binaires. Laccs binaire vous permet de stocker des donnes dans un ordre quelconque au sein de fichiers. Ce mode daccs est semblable laccs direct, mais sen diffrencie par le fait quil ny a aucune estimation du type de donnes ou de la longueur des enregistrements. Toutefois, il est ncessaire de connatre avec prcision la manire dont les donnes ont t crites dans le fichier pour les extraire correctement. Il faut bien comprendre quil sagit de modes daccs, qui ne sont pas enregistres dans le fichier. Un mme fichier peut tre trait dans les trois modes, avec des rsultats qui peuvent videmment tre souhaits. 1) Accs Squentiel : Le mode daccs squentiel est en ralit le nom commun donn trois modes daccs, spcifis lors de louverture du fichier avec Open, qui prcisent le type daccs effectu : Input indique que laccs au fichier doit se faire en lecture seule. Output indique son accs en criture. Si le fichier est ouvert dans ce mode, il est rinitialis vide et son prcdent est perdu. Append indique son accs en criture. Le contenu prcdent est conserv, et lcriture dans le fichier ajoute de nouveaux enregistrements. Exemple: Open MYFILLE.TXT For Input As 1 Open MYFILLE.TXT For Output As 1 Open MYFILLE.TXT For Append As 1

  • Visual Basic

    www.developpez.c.la 34

    Si le fichier est ouvert en lecture, on peut en lire les enregistrements successifs laide de linstruction line input qui lit la prochaine ligne (initialement la premire) , puis positionne le fichier la ligne suivante. La fonction EOF peut tre utilise pour savoir si la lecture a atteint la fin du fichier. Laccs squentiel autoris galement dautres instructions de lecture: Input #### et Write. Dim varline Open FICHTEST For Input As ####1Ouvre le fichier. Do While Not EOF(1) Effectue la boucle jusqu la fin du fichier LineInput ####, Varrline Lit une ligne et laffecte la variable varline Txtnom.text = varline Affiche le rsultat dans la zone de texte. Loop Close #### 1 Ferme le fichier. Pour crire dans un fichier en mode squentiel, ouvert en Output, ou en Append, on utilise linstruction Print ####, qui crit le texte donn, et ajoute les caractres de fin de lignes; Print 1, thebox. text ou bien linstruction Write #### Dim varnom as string, varnum as integer Varnom = Bonjour Varnom = 1230 Write #### 1 varnon, varnum Visual Basic crit don les caractres suivants (signe de ponctuation compris) dans le fichier: Bonjour , 1230. 2) Accs direct ou accs alatoire : Un fichier ouvert en mode daccs est vu comme une suite denregistrements de longueur fixe. La structure dun enregistrement est souvent dfinie laide dun directive Type qui permet den spcifier les champs. Par exemple: Type enrclient Nom As String* 25 Numro As Integer Rue As String * 20 Montant As Currency End Type Par la suite il est ncessaire de dclarer une variable denregistrement, soit avec Dim pour une utilisation en local avec Global au niveau dun module pour une utilisation globale. Dim Client As EnreClient Global Client as EnrClient Louverture du fichier se fait toujours avec linstruction Open, dans laquelle le mode est Random. De plus, il faut prciser la longueur de lenregistrement, a