Programmation Sous Visual Basic
Programmation Sous Visual Basic
Visual Basic
[Link]
DÉPARTEMENT DE STATISTIQUE ET
DE L'INFORMATIQUE APPLIQUÉES
Plan
2
[Link] 25/12/2008
Démarrage de Visual Basic
Projets existant
Projets récents
Créer un nouveau
projet
[Link] 25/12/2008
Créer un nouveau projet
4
2: Modèle du projet
(Application Windows)
[Link] 25/12/2008
5
PREMIÈRE APPLICATION
[Link] 25/12/2008
Créer un projet dans Visual Basic
6
[Link] 25/12/2008
L'interface de travail
7
Explorateur
Barre d'outils
[Link] 25/12/2008
9
Interface
utilisateur
WebBrowser
[Link] 25/12/2008
Personnaliser l'apparence et le comportement
10
Dans la leçon précédente, vous avez créé une interface utilisateur en ajoutant des contrôles à votre
application. Toutefois, à ce stade, ni son fonctionnement ni son aspect ne semblent être ceux d'une
application finie. Dans cette leçon, vous définirez des propriétés pour gérer l'aspect de vos
contrôles, à l'aide de la fenêtre Propriétés.
Pour définir les propriétés de vos contrôles
1. Dans le Concepteur de formulaires, sélectionnez le contrôle Panel.
La fenêtre Propriétés placée dans le coin inférieur droit de l'IDE affiche toutes les
propriétés destinées au contrôle Panel nommé Panel1.
2. Dans la fenêtre Propriétés, sélectionnez la propriété Dock, puis cliquez sur la flèche de
droite. Une petite fenêtre de sélection de propriétés contenant plusieurs zones s'affiche.
3. Cliquez sur la zone supérieure dans la fenêtre de sélection de propriétés pour attribuer à la
propriété Dock la valeur Top. Le contrôle Panel se développe pour occuper le haut du
formulaire.
4. Dans le Concepteur de formulaires, sélectionnez le contrôle WebBrowser. Dans la
fenêtre Propriétés, affectez à sa propriété Dock la valeur Fill en sélectionnant la propriété
Dock, en cliquant sur la flèche de droite et en sélectionnant la zone centrale dans la fenêtre
de sélection de propriétés.
5. Dans le Concepteur de formulaires, sélectionnez le contrôle Button.
6. Dans la fenêtre Propriétés, sélectionnez la propriété Text du contrôle Button. Dans la
colonne droite, supprimez Button1 et remplacez-le par Go!.
7. Redimensionnez ou déplacez éventuellement des contrôles et redimensionnez le formulaire
selon vos goûts.
[Link] 25/12/2008
Ajouter du code Visual Basic
11
[Link] 25/12/2008
Ajouter du code Visual Basic
12
[Link] 25/12/2008
Exécuter et tester votre programme
13
[Link] 25/12/2008
14
Exécution de
votre premier
programme
[Link] 25/12/2008
Fondements de la programmation en Visual Basic
15
Les nombres
[Link] 25/12/2008
Les Contrôles de base en Visual Basic
16
Le contrôle “TextBox”
Le contrôle “Button”
Le contrôle “Label”
[Link] 25/12/2008
Boîte à outils
17
[Link] 25/12/2008
Trois Controls (en mode concépteur)
18
TextBox
[Link] 25/12/2008
Le contrôle “TextBox”
Boutton des
Tâches
Tags de
dimensionnement
25/12/2008 [Link]
19
Fenêtre des Properties
Affichage par catégorie Affichage par ordre alphabétique
Appuyez sur F4
pour afficher la
fenêtre Propriétés
pour le contrôle
sélectionné.
[Link] 20 25/12/2008
Certaines propriétés souvent utilisées
21
Text
Name
Enable
Visible
[Link]
[Link]
ForeColor
BackColor
ReadOnly
[Link] 25/12/2008
Définition des propriétés
22
[Link] 25/12/2008
Le contrôle “Button”
25/12/2008 [Link]
23
Ajouter une touche d'accès rapide
24
[Link] 25/12/2008
La propriété “Name”
25
[Link] 25/12/2008
Le contrôle “Label” (étiquette)
26
[Link] 25/12/2008
Prefixes des noms de contrôles
25/12/2008 [Link]
27
Les Evénements en Visual Basic
28
[Link] 25/12/2008
Focus
29
[Link] 25/12/2008
Fenêtre du code
30
Page tab
Nom de Nom de la
la Classe Methode
[Link] 25/12/2008
Exemple de formulaire
31
txtFirst
txtSecond
btnRed
[Link] 25/12/2008
Code à saisir
32
[Link] 25/12/2008
IntelliSense
33
[Link] 25/12/2008
Entête de la procédure évenementielle
34
[Link] 25/12/2008
Nombres
35
Operations arithmétiques
Variables
Incrémentation de la valeur d‟une variable
Fonctions prédéfinis: (exemples)
[Link]
Int
[Link]
[Link] 25/12/2008
Nombres (suite)
36
Déclarations multiple
Parenthèses
[Link] 25/12/2008
Operations arithmetiques
37
3 * (4 + 5)
2^3
[Link] 25/12/2008
Variable numérique
38
Exemples:
speed
distance
interestRate
balance
[Link] 25/12/2008
Variables
39
Declaration:
Dim speed As Double
Nom de la Type de
Variable données
• Affectation:
speed = 50
[Link] 25/12/2008
Le type de données “Integer”
40
L‟instruction
Dim varName As Integer
déclares une variable numérique à laquelle on peut
assigner toutes les valeurs comprises
approximativement entre -2 milliard et 2 milliard .
[Link] 25/12/2008
Parenthèses
41
* /
+ -
[Link] 25/12/2008
Trois types d‟Erreurs
42
Erreurs de Syntax
Erreurs Logiques
[Link] 25/12/2008
Quelques exemples d'erreurs de syntaxe
43
Mal orthographier
[Link](3)
Omissions
[Link](2 + )
Ponctuation Incorrect
Dim m; n As Integer
[Link] 25/12/2008
Une erreur d'exécution par exemple
44
Erreur de débordement
[Link] 25/12/2008
Exemple d‟une erreur de logique
45
[Link] 25/12/2008
Concepts clés
46
[Link] 25/12/2008
Les Chaines de Caractères
47
[Link] 25/12/2008
Chaîne littérale
48
[Link] 25/12/2008
Variable chaîne de caractère
49
Exemples:
Pays
CIN
mot
Prenom
[Link] 25/12/2008
Variable chaîne de caractère
50
Déclaration:
Dim Prenom As String
Nom de la Type de
variable données
• Affectation:
Prenom = "Jamal"
[Link] 25/12/2008
Variable chaîne de caractère
51
[Link] 25/12/2008
Utilisation des TextBox pour les Entrés/Sorties
52
Exemple d‟entré
strVar = [Link]
Exemple de sortie
[Link] = strVar
[Link] 25/12/2008
Conversion de données
53
[Link] = CStr(numVar)
[Link] 25/12/2008
Concaténation
54
Displays
Le contenu d'une zone de texte est toujours
une chaîne.
[Link] 25/12/2008
Propriétés et Méthodes des chaînes
55
"Visual".Length est 6.
"Visual".ToUpper est VISUAL.
"123 Hike".Length est 8.
"123 Hike".ToLower est 123 hike.
"a" & " bcd ".Trim & "efg" est abcdefg.
[Link] 25/12/2008
Positions dans les chaînes
56
[Link] 25/12/2008
La méthode Substring
57
[Link] 25/12/2008
La méthode IndexOf
58
[Link] 25/12/2008
Les chaînes vide
59
[Link] 25/12/2008
La valeur initiale d‟une chaîne
60
[Link] 25/12/2008
Option Strict
61
[Link] 25/12/2008
Option Strict On pour tous les Programmes
62
[Link] 25/12/2008
Avec Option Strict On
63
[Link] 25/12/2008
Commentaires
64
Objectifs
D'autres personnes peuvent facilement comprendre le
programme.
Vous pouvez le comprendre quand vous le lirez plus tard.
Les programmes long sont plus faciles à lire parce ses
différents parties sont documentées.
[Link] 25/12/2008
Coloration automatique
65
Commentaires– vert
Chaînes – rouge
Mots clés– bleu
Note: Les mots clés sont des mots reservé par le langage
comme Sub, Handles, Private, With, et End et qui
ont une signification spéciale en Visual Basic. Ils ne
peuvent pas être utilisés comme noms de variables.
[Link] 25/12/2008
Le caractère de continuation de ligne
66
[Link] 25/12/2008
Entrés & Sorties
67
[Link] 25/12/2008
Lecture des données à partir des fichiers texte
68
[Link] 25/12/2008
Exemple de fichier: [Link]
69
[Link] 25/12/2008
Etapes pour l‟utilisation du StreamReader
70
[Link] 25/12/2008
Etapes pour l‟utilisation du StreamReader
71
[Link] 25/12/2008
Exemple d‟utilisation StreamReader
72
[Link] 25/12/2008
Lecture des données à partir des fichiers Excel
73
[Link] 25/12/2008
Etapes pour l‟utilisation des fichiers Excel
74
[Link] 25/12/2008
Etapes pour l‟utilisation des fichiers Excel
75
[Link] 25/12/2008
Etapes pour l‟utilisation des fichiers Excel
76
[Link] 25/12/2008
Etapes pour l‟utilisation des fichiers Excel
77
[Link](3, 1).Value = x
Cette instruction transfère dans la troisième ligne et la première
colonne de la feuille de calcul désigné par la variable nommée
«feuille» le contenu de la variable x.
[Link] 25/12/2008
Etapes pour l‟utilisation des fichiers Excel
78
Enregistrement et fermeture du
classeur Excel
[Link] (filespec)
'Enregistrement d‟un nouveau classeur Excel
[Link]()
'Enregistrement du classeur Excel
[Link]()
'Fermeture du classeur Excel
[Link]()
'Fermeture de l'application Excel
[Link] 25/12/2008
Exemple de fichier: [Link]
79
[Link] 25/12/2008
Exemple d‟utilisation
80
Imports [Link]
…
'Déclaration des variables
Dim appExcel As [Link] 'Application Excel
Dim classeur As [Link] 'Classeur Excel
Dim feuille As [Link] „Feuille Excel
Dim name As String
Dim wage, hours As Double
[Link] 25/12/2008
Obtenir des données à partir d'une boîte de
dialogue d'entrée
82
Titre
Invite
[Link] 25/12/2008
Utilisation de la boîte de dialogue pour
l‟affichage des messages
83
[Link](invite,titre,boutons)
[Link]("Seules les valeurs positives sont acceptées", _
"Information", _
[Link])
Titre
Invite
[Link] 25/12/2008
Le contrôle MaskedTextBox
84
[Link] 25/12/2008
La boîte de dialogue des masques de saisie
85
[Link] 25/12/2008
Masque
86
PROCÉDURES ET FONCTIONS
[Link] 25/12/2008
Procédures & Fonctions (Introduction)
88
Une procédure est un bloc de code autonome qui peut être exécuté à partir
d'autres blocs de code. En général, les procédures contiennent chacune le
code nécessaire pour accomplir une tâche. Par exemple, vous pouvez
disposer d'une procédure appelée PlaySound qui contient le code
nécessaire à la lecture d'un fichier .wav. Même si vous pouvez écrire le code
pour lire un son chaque fois que votre programme doit en émettre un, il est
plus rationnel de créer une procédure unique que vous pouvez appeler
depuis n'importe quel emplacement dans votre programme.
[Link] 25/12/2008
Procédures & Fonctions (Introduction)
89
Il existe deux types de sous-routines : les fonctions et les procédures (parfois
appelées sub). Une fonction retourne une valeur à la procédure qui l'a appelée,
tandis qu'une procédure se contente d'exécuter un code. Les procédures sont
appelées lorsqu'une ligne de code qui contient leurs noms est ajoutée au
programme, comme dans l'exemple suivant.
DisplayResults
Les fonctions sont différentes, car non seulement elles exécutent le code, mais elles
retournent également une valeur. Par exemple, imaginez une fonction appelée
GetDayOfWeek qui retourne un Integer qui indique le jour de la semaine. Vous
appelez cette fonction en déclarant d'abord une variable pour stocker la valeur
retournée, puis en assignant la valeur retournée à la variable pour l'utiliser
ultérieurement, comme illustré ci-dessous.
Dim Today As Integer
Today = GetDayOfWeek
Dans cet exemple, la valeur retournée par la fonction est copiée dans la variable
nommée Today, puis enregistrée à des fins d'utilisation ultérieure.
[Link] 25/12/2008
Écriture de procédures
90
Procédure
Sub MyFirstSub()
…
End Sub
Le mot clé Sub explique au programme que cette sous-routine est une procédure et ne
retournera aucune valeur. Le nom de la procédure (MyFirstSub) vient ensuite. Les
parenthèses vides indiquent l'absence de paramètres dans cette procédure. Enfin, le mot clé
End Sub indique la fin de la procédure . Tout le code qui sera exécuté par cette sous-routine
se place entre ces deux lignes.
Fonction
Function MyFirstFunction() As Integer
…
Return (resultat)
End Function
Les mots clés As Integer indiquent que cette fonction retourne une valeur de type Integer .
Pour retourner une valeur à partir d'une fonction, utilisez le mot clé Return, comme illustré
dans l'exemple suivant.
[Link] 25/12/2008
Paramètres des Fonctions et des Procédures
91
Les paramètres sont très similaires aux variables. Ils disposent d'un type et d'un
nom, et ils stockent des informations, comme les variables. Ils s'utilisent comme des
variables dans une procédure. Les deux principales différences entre les paramètres
et les variables sont les suivantes :
Les paramètres sont déclarés dans la déclaration de procédure, et non individuellement sur des
lignes de code distinctes.
Les paramètres ne peuvent être utilisés que dans la procédure dans laquelle ils sont déclarés.
Les paramètres sont déclarés dans la déclaration de procédure, entre les
parenthèses qui suivent le nom de procédure. Il servent à transférer des
informations entre la procédure appelante et la procédure appelée.
Le mot clé As est utilisé pour déclarer le type, et chaque paramètre est
généralement précédé par le mot clé ByVal ou ByRef.
Un exemple de sous-routine avec ses paramètres est proposé ci-dessous.
Sub PlaySound(ByVal SoundFile As String, ByVal Volume As Integer)
[Link](SoundFile, Volume)
End Sub
[Link] 25/12/2008
Paramètres des fonctions et des sous-routines
92
Procédure Procédure
appelante appelée
[Link] 25/12/2008
Procédures Sub, Partie I
93
Procédures Sub
[Link] 25/12/2008
La modularité
94
[Link] 25/12/2008
Sub Procedures
95
Sub NomDeLaProcedure()
instructions
End Sub
Appel
NomDeLaProcedure()
[Link] 25/12/2008
Passage de valeurs
96
[Link] 25/12/2008
Arguments et Paramètres
97
Sum(2, 3)
arguments
paramètres
Sub Sum(ByVal num1 As Double, ByVal num2 As Double)
Ajouter automatiquement:
transfert des paramètres par valeur par opposition à
« ByRef » qui spécifie un transfert des paramètres
par référence.
[Link] 25/12/2008
Quelques instructions d‟appels
98
Sum(2, 3)
Sum(4, 6)
Sum(7, 8)
Sorties:
La somme de 2 et 3 est 5.
La somme de 4 et 6 est 10
La somme de 7 et 8 est 15.
[Link] 25/12/2008
Passage des chaînes et des nombres
99
Demo("MA", 34)
[Link] 25/12/2008
Variables et Expressions comme Arguments
100
[Link] 25/12/2008
Appel
101
[Link] 25/12/2008
Procedures Sub, Partie II
102
[Link] 25/12/2008
ByVal et ByRef
103
[Link] 25/12/2008
Passage par valeur
104
[Link] 25/12/2008
Exemple
105
…
Dim n As Double = 4
Triple(n)
[Link]([Link])
…
[Link] 25/12/2008
Exemple
107
…
Dim n As Double = 4
Triple(n)
[Link]([Link])
…
[Link] 25/12/2008
Exemple
109
…
Dim num As Integer = 4
SetFive()
[Link]([Link])
…
Sub SetFive()
Dim num As Integer = 5
End Sub
Sortie: 4
[Link] 25/12/2008
Variables membre
110
[Link] 25/12/2008
Exemple
111
Sub SetFive()
num = 5
End Sub
Sortie: 5
[Link] 25/12/2008
Portée
112
[Link] 25/12/2008
Programmation Orientée Objet POO
113
[Link] 25/12/2008
Concepts clés
Opérateurs Relationnels
Opérateurs Logiques
Le bloc If
[Link] 25/12/2008
Opérateurs Relationnels
116
< inférieur à
<= inférieur ou égale à
> Supérieur à
>= supérieur ou égale à
= égale à
<> Différent de
[Link] 25/12/2008
Notes sur le Opérateurs Relationnels
117
[Link] 25/12/2008
Opérateurs Logiques
118
And
Or
Not
[Link] 25/12/2008
Opérateurs Logiques
119
[Link] 25/12/2008
Exemple
120
(n[2, 5])
[Link] 25/12/2008
Erreur de syntaxe
121
1ère opération
Résultat de type
True ou False
Opération imposible
entre un booléen et un entier
[Link] 25/12/2008
Ordre des Opérations
122
[Link] 25/12/2008
L‟ordre des opération arithmétiques
123
1. Parenthèses
2. Exponentiation
3. Division et multiplication
4. Addition et soustraction
[Link] 25/12/2008
Ordre des opérations relationnels
124
[Link] 25/12/2008
Ordre des opérations logiques
125
1. Not
2. And
3. Or
[Link] 25/12/2008
Condition
126
[Link] 25/12/2008
Erreur courante dans les expression booléenne
127
[Link] 25/12/2008
Variable Booléenne
128
[Link] 25/12/2008
Blocs If
129
Blocs If
Clause ElseIf
[Link] 25/12/2008
Blocs If
130
[Link] 25/12/2008
La structure conditionnelle simple
131
Vrai Faux
Si condition Alors
Instructions Instructions cas
Cas vrai ... faux ... ...Instructions_cas_vrai...
[Sinon
...Instructions_cas_faux...]
... Fin Si
131
[Link] Algorithmique et Programmation 25 décembre 200825/12/2008
Exemple 1: Form
132
txtPremierNum
txtSecondNum
txtResult
[Link] 25/12/2008
Example 1: Code
133
[Link] 25/12/2008
Example 1: Output
134
[Link] 25/12/2008
La clause ElseIf
135
If condition1 Then
action1 …
ElseIf condition2 Then
action2
non
non
non
ElseIf condition3 Then condition1 condition2 condition3
action3
Else oui oui oui
action4
action1 action2 action3 action4
End If
[Link] 25/12/2008
Simplified Nested If Statement
136
If Moins
imbriqué confus
[Link] 25/12/2008
L‟expression conditionnelle IIf
137
IIF évalue une expression et retourne l' un ou l' autre des deux arguments passés en paramètres.
Synopsis:
IIf(expr, truepart, falsepart)
Si expr est vraie, retourner truepart. Sinon retourner falsepart.
Cet exemple utilise la fonction IIf pour évaluer le paramètre TestMe et renvoie soit le mot
"Grand" si le montant est supérieur à 1000 soit le mot "Petit" s'il est inférieur à 1000.
[Link] 25/12/2008
Répétition
139
Boucles Do
Instruction
Instruction
Boucles For...Next précédente
précédente
Instruction(s)
Pour i allant de x à y à répéter
Boucles imbriquées
Instruction(s)
Condition
à répéter
Instruction
Instruction suivante
suivante
[Link] 25/12/2008
Les boucles Do
140
[Link] 25/12/2008
Do Loop Syntax
141
La condition est testée, si elle
est vraie, les instructions à
l’intérieur de la boucle sont
Do While condition exécutés, ensuite on revient à
la condition pour la retester.
instruction(s) Si elle est fausse, les
instructions après la boucle
Loop sont exécutées.
[Link] 25/12/2008
Exemple 1
142
[Link] 25/12/2008
Post Test Loop
143
Do
Instruction(s)
Loop Until condition
txtTaille
txtQuand
[Link] 25/12/2008
Exemple 2: Code
145
[Link] 25/12/2008
Exemple 2: Output
146
[Link] 25/12/2008
Comments
147
[Link] 25/12/2008
Règles d‟écriture de l‟instruction Do...While et
Do...Until
148
Règles
Test de la condition. Vous pouvez tester condition une seule fois, au début ou à la fin de la boucle. Vous
pouvez utiliser While ou Until pour spécifier condition, mais pas les deux.
Nombre d'itérations. Si vous testez condition au début de la boucle (dans l'instruction Do), la boucle peut
ne jamais s'exécuter, même une fois. Si vous la testez à la fin de la boucle (dans l'instruction Loop), la boucle
s'exécute toujours, au moins une fois.
Imbrication de boucles. Vous pouvez imbriquer des boucles Do en plaçant une boucle à l'intérieur d'une
autre. Vous pouvez également imbriquer divers types de structures de contrôle l'un dans l'autre.
Transfert en dehors de la boucle. Exit passe immédiatement le contrôle à l'instruction qui suit
l'instruction Loop. Vous pouvez vouloir quitter une boucle si vous décelez une condition qui la rend inutile ou
impossible pour poursuivre l'itération, telle qu'une valeur erronée ou une demande d'arrêt. Vous pouvez placer
un nombre quelconque d'instructions Exit Do n'importe où dans la boucle Do. Exit Do est généralement
utilisé après l'évaluation d'une condition, par exemple dans une structure If...Then...Else.
Boucles infinies
Vous pouvez utiliser Exit Do pour tester une condition qui engendrerait une boucle infinie, c'est-à-dire une
boucle qui pourrait s'exécuter de nombreuses fois, voire indéfiniment. Si vous détectez une telle condition,
vous pouvez utiliser Exit Do pour quitter la boucle. Sinon, la boucle continue à s'exécuter.
[Link] 25/12/2008
Traitement des listes de données avec les boucles Do
149
La méthode Peek
Compteur et Accumulateurs
Indicateurs
[Link] 25/12/2008
Peek Method
150
[Link] 25/12/2008
Peek Exemple
151
[Link] 25/12/2008
Exemple 3: Affiche le contenu d‟un fichier
152
Dim sr As [Link] = _
[Link]("[Link]")
[Link]()
Do While [Link] <> -1
nom = [Link]
NumPhone = [Link]
[Link](nom & " " _
& NumPhone )
Loop
[Link]()
[Link] 25/12/2008
Exemple 4: Partial Code
153
[Link] 25/12/2008
Counters and Accumulators
154
[Link] 25/12/2008
File [Link]
155
1
1
5
10 Compter le nombre
de pièces ainsi que
10 leur somme
25
[Link] 25/12/2008
Example 3: Partial Code
156
[Link] 25/12/2008
Indicateurs
157
[Link] 25/12/2008
Exemple 5: Code partiel
158
[Link] 25/12/2008
Syntaxe de l‟instruction For … Next
160
[Link] 25/12/2008
Exemple
161
Dim i As Integer
For i = 1 To 5
[Link](i & " " & i ^ 2)
Next
[Link] 25/12/2008
Exemple: compte à rebour
162
Dim j As Integer
For j = 10 To 1 Step -1
[Link](j)
Next
[Link]("Décollage")
[Link] 25/12/2008
Les paires For et Next
163
[Link] 25/12/2008
L‟option Step
164
[Link] 25/12/2008
Boucles imbriquées
165
Next
For i Loop
Next
Next Next
Next Next
Loop Next Next Next
Valide Valide Non Valide Non Valide
[Link] 25/12/2008
Structures de contrôle imbriquées
166
If i=100 then
Next i
End If
[Link] 25/12/2008
Tableaux
168
Tries et recherches
[Link] 25/12/2008
Création et manipulation des tableaux
169
La méthode GetUpperBound
L‟instruction ReDim
[Link] 25/12/2008
Exemple
171
Supposer que vous voulez évaluer les notes d'examen pour 30 étudiants
et d‟afficher les noms des étudiants dont les notes sont au-dessus de
moyenne.
L‟utilisation de variables simples passe par la déclaration de ces
dernières une à une.
[Link] 25/12/2008
Utilisation des tableaux
172
Limite supérieure de l’indice du tableau
For i = 1 To 10
Noms(i) = InputBox(" Entrer le nom d'etudiant " & i)
Next i
.....
[Link] 25/12/2008
Exemple: Trouver le nombre max dans un tableau de
nombres entiers
175
' Déclaration
Dim Nombres (10) As Integer
Dim i, valMax As Integer
' Initialisation
For i = 1 To 10
Nombres(i) = InputBox (" Valeur pour Nombre " & i)
Next
valMax = Nombres(1)
For i = 2 To 10
If Nombres(i) > valMax Then
valMax = Nombres(i)
End If
Next
[Link] 25/12/2008
Terminologie
177
[Link] 25/12/2008
Les Méthodes de la Classe Array
178
Soit un tableau Mois()
Méthode Exemple
Clear [Link](Mois,0,2)
„Efface 2 éléments du tableau Mois à partir de l‟élément 0
Reverse [Link](Mois, 1, 3)
„inverse les 3 éléments à partir de l‟élément 1
Copy [Link](Mois,1,Mois2,1,20)
„copie 20 éléments de Mois vers Mois2 à partir du 2eme élément.
Sort [Link](Mois)
„Trie le tableau Mois
IndexOf Dim myIndex As Integer = [Link](Mois, 5)
„Recherche la valeur 5 dans le tableau Mois et retourne l‟indice de la case
où elle se trouve; -1 si l'élément n'est pas trouvé.
GetUpperBound Indice = [Link](0)
„Retourne le plus grand indice disponible pour la dimension indiquée
d'un tableau
[Link] 25/12/2008
Exemple
179
Affichage: 6
[Link] 25/12/2008
Instruction ReDim
180
ReDim arrayName(m)
[Link] 25/12/2008
L‟erreur IndexOutofRange
182
Le code suivant référence un élément de tableau qui n'existe pas.
Ceci causera une erreur (exception).
[Link] 25/12/2008
Tableau à deux dimensions
183
Exemple
Réservation de l‟emplacement d‟un tableau numérique de
200 valeurs
Par 10 lignes et 20 colonnes
Déclaration
Dim Notes (9, 19) As Integer
[Link] 25/12/2008
Tableau à deux dimensions (2)
184
[Link] 25/12/2008
Tableau à deux dimensions (3)
185
Indexation
Notes(0,0) Notes(i, j)
Notes(1, 2)
Notes(9, 19)
[Link] 25/12/2008
Confusion
186
[Link] 25/12/2008
Concepts clés
[Link] 25/12/2008
Collection contre Tableau
189
[Link] 25/12/2008
Création d‟une collection
190
[Link] 25/12/2008
Liste d‟objets: ArrayList
191
[Link] 25/12/2008
Méthode Add
192
[Link]("Lulu")
[Link]("Titi")
La collection a 3 éléments maintenant. Toto
Lulu
Titi
[Link] 25/12/2008
Méthode Remove
193
[Link] 25/12/2008
Propriété Item
194
[Link] 25/12/2008
Parcourir une collection
195
[Link] 25/12/2008
D‟autres Propriétés et Méthodes
196
[Link] 25/12/2008
Concepts clés
25/12/2008 [Link]
197
Contrôles et objets additionnels
198
ListBox,
ComboBox
MDI
[Link] 25/12/2008
Le contrôle ListBox
199
[Link] 25/12/2008
L'élément actuellement sélectionné dans la ListBox
201
[Link] 25/12/2008
Le contrôle ComboBox
202
[Link] 25/12/2008
The OpenFileDialog Control
203
[Link] 25/12/2008
An Open File Dialog Box
204
[Link] 25/12/2008
The Filter Property
205
[Link] 25/12/2008
Using the OpenFileDialog control
206
[Link]()
After the Open button has been pressed, the file
name selected and its complete filespec will be
contained in the property:
[Link]
[Link] 25/12/2008
An Example
207
[Link] 25/12/2008
Example Code
208
[Link] 25/12/2008
The Group Box Control
210
[Link] 25/12/2008
Group Box Example
211
Three
attached controls:
Button1
Button2
Button3
[Link] 25/12/2008
The Check Box Control
212
[Link] 25/12/2008
Example 2: Form
213
[Link] 25/12/2008
Example 2: Code
214
[Link] 25/12/2008
Example 2: Output
215
[Link] 25/12/2008
The Radio Button Control
216
[Link] 25/12/2008
Radio Button Properties
217
[Link]
has value True if button in on.
[Link] = True
[Link] 25/12/2008
Example 3: Form
218
radCandidate1
radCandidate2
txtVote
[Link] 25/12/2008
Example 3: Code
219
[Link] 25/12/2008
Example 3: Output
220
[Link] 25/12/2008
The Timer Control
221
[Link] 25/12/2008
Multiple Forms
222
[Link] 25/12/2008
Add New Items dialog box
223
[Link] 25/12/2008
Add New Items dialog box
224
[Link] 25/12/2008
Solution Explorer
225
[Link] 25/12/2008
Variables and Multiple Forms
226
[Link] 25/12/2008
Concepts clés
227
[Link] 25/12/2008
228
DESSINER
[Link] 25/12/2008
L'objet Graphics
229
[Link] 25/12/2008
Obtenir un objet Graphics
230
[Link] 25/12/2008
Instanciation de l'Objet Graphics
231
Attention: le Graphics n'est pas 'visible', pour le voir il faut le mettre dans un composant (un
PictureBox par exemple) qui lui sera visible. On verra cela plus bas.
[Link] 25/12/2008
La méthode CreateGraphics
232
L'événements Paint des contrôles se déclenche lorsque le contrôle est redessiné, un objet
Graphics est fourni comme une valeur de PaintEventArgs.
Pour obtenir une référence à un objet Graphics à partir des PaintEventArgs de
l'événement Paint et dessiner:
1. Déclarez l'objet Graphics
2. Assignez la variable pour qu'elle référence l'objet Graphics passé dans les PaintEventArgs.
3. Dessinez dans l'objet Graphics.
Private Sub Form1_Paint(sender As Object, e As PaintEventArgs) Handles _
[Link] 'appelle la méthode Paint 'normale'
Là aussi e est la référence à l'objet qui a déclenché Paint (Form1 ici), si je dessine sur e, en
fait je dessine sur Form1.
Noter bien que e est visible uniquement dans Form1_Paint
Pour forcer le déclenchement de l'évènement Paint et dessiner, on utilise la méthode
OnPaint
[Link] 25/12/2008
Comment dessiner?
234
[Link] 25/12/2008
Pour travailler on utilise les objets:
235
Brush (Brosse) Utilisé pour remplir des surfaces fermées avec des motifs, des couleurs ou des [Link] y a plusieurs types de brush:
La brosse peut être pleine et ne contenir qu'une couleur.
Dim SB= New SolidBrush([Link])
TextureBrush utilise une image pour remplir.
Dim SB= New TextureBrush(MonImage)
LinéarGradientBrush permet des dégradés (passage progressive d'une couleur à une autre).
Dim SB= New LinearGradientBrush(PointDébut, PointFin,Color1, Color2)
Les HatchBrush sont des brosse hachurées
Dim HatchBrush hb = new HatchBrush([Link], [Link],[Link](100, [Link]))
Les PathGradient sont des brosses plus complexes.
Pen (Stylet) Utilisé pour dessiner des lignes et des polygones, tels que des rectangles, des arcs et des [Link] créer un Stylet?
Dim blackPen As New Pen([Link]) 'on donne la couleur
Dim blackPen As New Pen([Link], 3) 'on donne couleur et l'épaisseur
Dim blackPen As New Pen(MyBrush) 'on peut même créer un stylet avec une brosse
Propriétés de ce Stylet:
DashStyle permet de faire des pointillés.
StartCap et EndCap définissent la forme du début et de la fin du dessin (rond, carré, flèche..)
Font (Police) Utilisé pour décrire la police utilisée pour afficher le texte.
Dim Ft= New Font("Lucida sans unicode",60) 'paramètres=nom de la font et taille
Il y a de nombreuses surcharges.
Dim Ft= New Font("Lucida sans unicode",60, [Link])'pour écrire en gras
Color Utilisé pour décrire la couleur utilisée pour afficher un objet particulier. Dans GDI+, la couleur peut être à contrôle
(Couleur) [Link] pour le rouge
Point Ils ont des cordonnées x, y
Dim point1 As New Point(120, 120) ' Point avec des Integer
ou des PointF 'avec des Singles
Rectangle Permet de définir un rectangle.
Dim r As New RectangleF(0, 0, 100, 100)
On remarque que le F après Point ou Rectangle veut dire 'Float', et nécessite l'usage de Single.
[Link] 25/12/2008
Exemple: Dessiner une ligne sur le graphique:
236
[Link] 25/12/2008
Exemple:Dessiner une ellipse
237
[Link] 25/12/2008
Exemple: Dessiner un rectangle
238
[Link] 25/12/2008
Exemple: Dessiner un polygone
239
[Link] 25/12/2008
Exemple: Ecrire du texte sur le graphique
240
[Link] 25/12/2008
Exemple: Ajouter une image sur le graphique
241
On peut travailler avec des images .jpeg .png .bmp .Gif .icon .tiff .exif
[Link] 25/12/2008
Exemple: Comment voir un Graphics?
242
Si on a instancé un objet Graphics, on ne le voit pas. Pour le voir il faut le mettre dans
un PictureBox par exemple:
[Link] 25/12/2008
Gestion des erreurs
243
Même les programmes les mieux conçus rencontrent parfois des erreurs.
Certaines erreurs sont des défauts au sein de votre code, qui peuvent être localisés, puis corrigés.
D'autres erreurs sont une conséquence normale du fonctionnement du programme ; par exemple, votre programme
peut tenter d'ouvrir un fichier qui est déjà en cours d'utilisation. Dans les cas de ce type, les erreurs peuvent être
prévues, mais ne peuvent pas être empêchées. En tant que programmeur, votre travail consiste à prévoir ces erreurs
et à aider votre programme à les traiter.
Vous pouvez utiliser le bloc Try...Catch...Finally pour gérer les erreurs d'exécution au sein de
votre code. Vous pouvez appliquer Try à un segment de code ; si une exception est générée par
ce code, le programme passe au bloc Catch. Le code présent dans le bloc Catch est alors
exécuté. Une fois l'exécution de ce code terminée, tout code présent dans le bloc Finally est
exécuté. Le bloc Try...Catch...Finally entier est fermé par une instruction End Try
L'exemple suivant illustre l'utilisation de chaque bloc :
Try
' Code here attempts to do something.
Catch
' If an error occurs, code here will be run.
Finally
' Code in this block will always be run.
End Try
En premier lieu, le code du bloc Try est exécuté. S'il s'exécute sans erreur, le programme passe
au bloc Catch et exécute le code dans le bloc Finally. Si une erreur se produit dans le bloc Try,
l'exécution passe immédiatement au bloc Catch. Le code présent dans ce bloc est alors exécuté.
Ensuite, le code du bloc Finally est exécuté.
[Link] 25/12/2008
244
[Link] 25/12/2008
Programmation Orientée Objet (POO)
245
Objet 1 Message
Objet 3
Objet 2
[Link] 25/12/2008
Programmation Orientée Objet
246
Fonction 1 Fonction 2
Fonction Fonction
DONNEES 3
6
Fonction 5 Fonction 4
[Link] 25/12/2008
Programmation Orientée Objet
247
Résistance
SetValueR SetValueP
GetRmin R P GetValueR
GetRmax GetValueP
[Link] 25/12/2008
Programmation Orientée Objet
248
[Link] 25/12/2008
Programmation Orientée Objet
250
L’Héritage
Permet de définir les bases d‟un nouvel objet à partir d‟un
objet existant
Le nouvel objet hérite des propriétés de l‟ancêtre et peut
recevoir de nouvelles fonctionnalités
Avantages
Meilleures réutilisations des réalisations antérieures
parfaitement au point
[Link] 25/12/2008
Programmation Orientée Objet
251
Concept de Classe
Type réunissant une description
D‟une collection de données membres hétérogènes ayant un
lien entres elles
D‟une collection de méthodes (fonctions membres) servant à
manipuler les données membres
Généralisation du type structure ou record des langages
non OO (classe = définition de données + définition de
méthodes)
Possibilité de fixer la visibilité externe des différents
constituants de la classe
[Link] 25/12/2008
Programmation Orientée Objet
252
[Link] 25/12/2008
Programmation Orientée Objet
253
Les Constructeurs
Permettent d‟initialiser l‟objets lors de sa création
copie des arguments vers les données membres
initialisation de variables dynamiques à la création de l‟objet
Sont appelés de manière automatique à la création de
l‟objet
Peuvent être surchargésOn peut en définir plusieurs de
même nom mais acceptant des arguments différents
Possèdent le même nom que la classe
[Link] 25/12/2008
Programmation Orientée Objet
254
Le Destructeur
Il est unique
[Link] 25/12/2008
Programmation Orientée Objet
255
Les Accesseurs
Catégorie de fonctions membres qui permettent l‟accès et
l‟utilisation des informations privées contenues dans l‟objet
Les Modificateurs
Permettent de modifier l‟état des données internes (publiques
ou privées) de l‟objet
[Link] 25/12/2008
Programmation Orientée Objet
256
[Link] 25/12/2008
Programmation Orientée Objet
257
Exemple
Public Class Complex
Public Real As Double
Public Imag As Double
End Class
[Link] 25/12/2008
Programmation Orientée Objet
258
Création d’un objet
Dim nom_objet As nom_classe = New nom_classe (arguments)
Exemple:
Dim lhs As Complex = New Complex(2.1, 3.3)
[Link] 25/12/2008
Programmation Orientée Objet
259
[Link] 25/12/2008
Programmation Orientée Objet
260
[Link]
[Link]
Langage_Objet
[Link]
[Link]
[Link]
fr/library/xk24xdbe(VS.80).aspx
[Link] 25/12/2008