If you can't read please download the document
Upload
abdelhak-hasnaoui
View
215
Download
0
Embed Size (px)
DESCRIPTION
CoursVb
Citation preview
Pro
fesseu
r M
.QB
AD
OU
1
VB.NET
Programmation Evnementielle
VB.NET
Cours
Applications
Pro
fesseu
r M
.QB
AD
OU
2
VB.NET
Apprendre dvelopper et dployer des applications
consoles et des applications Windows :
Etudier les lments du langage VB.Net,
Construire des applications selon l'approche objet (POO) : crer et
utiliser des classes, Encapsulation, Surcharge, redfinition,
Constructeurs, destructeurs, Hritage et polymorphisme
Utiliser les contrles WindowsForms et les WPF pour crer
l'interface utilisateur. Notion d'vnement.
Programmer aux donnes : Fichiers et Bases de donnes
Se familiariser avec
Crer et Grer un projet,
Compiler, excuter et dboguer
OBJECTIFS
Pro
fesseu
r M
.QB
AD
OU
3
VB.NET
Chap. I : les bases du langage Vb
Elments du langage VB
Chap. II : interfaces graphiques avec VB.NET
Contrles standards
Forms
Gestion des vnements
Chap. III : Accs aux bases de donnes
SOMMAIRE
Pro
fesseu
r M
.QB
AD
OU
4
VB.NET
Chap. I
Elments du
langage
VB.NET
Pro
fesseu
r M
.QB
AD
OU
5
VB.NET
Notion de donnes et de types
Les Instructions Entre/Sortie
Les structures de contrle
Conditionnelle, slective, rptitives
Compilation et excution d'un programme VB.NET
Les tableaux de donnes
Gestion des exceptions
Fonctions et procdures
Sommaire
II. Elments du langage VB.NET
Pro
fesseu
r M
.QB
AD
OU
6
VB.NET
Les types de donnes prdfinis
II.1. Notion de donne et de type
II. Elments du langage VB.NET
Type VB
Type .NET quivalent
Taille (en Octets)
Boolean System.Boolean 2
Byte System.Byte 1
Char System.Char 2
Date System.DateTime 8
Decimal System.Decimal 16
Double System.Double 8
Integer System.Int32 4
Long System.Int64 8
Object System.Object 4
Short System.Int16 2
Single System.Single 4
String System.String
les types VB et leurs quivalents dans.NET sont interchangeables.
Dclaration de variable/Constante
Dim nomVar As Type [= val_Init]
Const nomCst As Type = valeur
Notation des donnes littrales
Integer 145, -7, &FF
Long 100000L
Double 134.789, -45E-18
Single 134.789F, -4.5E-18F
Decimal 100000D
Char "A"c
String "aujourd'hui"
Boolean true, false
Date New Date(2003, 1, 27)
Pro
fesseu
r M
.QB
AD
OU
7
VB.NET
conversions entre nombres et chanes
II. Elments du langage VB.NET
La conversion d'une chane vers un nombre peut gnrer une erreur
appele exception (si la chane ne reprsente pas un nombre valide).Cette
erreur peut tre gre par la clause try catch end try suivante :
nombre.ToString ou "" & nombre ou CType(nombre,String)
objet.ToString
Integer.Parse(chaine) ou Int32.Parse(chaine)
Long.Parse(chaine) ou Int64.Parse
Double.Parse(chane)
Single.Parse(chane)
try
appel de la fonction susceptible de gnrer l'exception
catch e as Exception
traitement de l'exception e
end try
Pro
fesseu
r M
.QB
AD
OU
8
VB.NET
Exemple
II. Elments du langage VB.NET
Option Strict On ' directive
' espaces de noms imports
Imports System.Console
Module TestConversion
Public Sub afficher(ByVal S As String)
WriteLine("S=" + S)
End Sub
Sub Main()' procdure principale
' donnes locales
Dim l as long=100
Const i As Integer = 10
Const f As Single = 45.78F
' nombre --> chane
afficher(CType(i, String))
afficher(CType(l, String))
afficher(CType(f, String))
Dim i1 As Integer
Try
i1 = Integer.Parse("10.67") 'chane-->int
afficher(i1.ToString)
Catch e As Exception
afficher("Erreur [10.67] : " + e.Message)
End Try
' chane --> double
Dim d1 As Double
Try
d1 = Double.Parse(" 100.87 ")
afficher("" & d1)
Catch e As Exception
afficher("Erreur [100.87] : " +e.Message)
End Try
End Sub
End Module
Pro
fesseu
r M
.QB
AD
OU
9
VB.NET II. Elments du langage VB.NET
II.2. Les instructions lmentaires
les instructions lmentaires
les instructions de contrle du droulement du programme.
1. lecture d'informations provenant du clavier
2. traitement d'informations(calculs)
3. criture d'informations l'cran
4. lecture d'informations provenant d'un fichier disque
5. criture d'informations dans un fichier disque
UC - Mmoire
Disque
Clavier Ecran 1 2 3
5 4
Pro
fesseu
r M
.QB
AD
OU
10
VB.NET II. Elments du langage VB.NET
Il existe diffrentes instructions d'criture l'cran :
II.2.1. Ecriture sur cran
Console.Out.WriteLine(expression)
Console.Out.Write(expression)
Console.WriteLine(expression)
Console.Write(expression)
Console.Error.WriteLine (expression)
Console.Error.Write (expression)
expression est toute donne qui peut tre convertie en chane de
caractres pour tre affich l'cran.
La classe System.Console donne accs aux oprations d'criture
cran (Write, WriteLine).
La classe System.Console a deux proprits(objets) Out et Error qui
sont des flux d'criture de type StreamWriter
Pro
fesseu
r M
.QB
AD
OU
11
VB.NET II. Elments du langage VB.NET
l'objet Console.In de type StreamReader permet de lire une ligne de texte
partir du clavier par la mthode ReadLine :
II.2.2. Lecture de donnes du clavier
Dim ligne as string=Console.in.ReadLine()
Dim ligne as string=Console.ReadLine()
Exemple :
Imports System.Console
Module EntreeSortie
Sub Main()
Dim nom As String
Dim adresse As String
Dim age As Byte
Write("nom : ") : nom = ReadLine()
Write("Adresse: ") : adresse= ReadLine()
Try
Write("Age : ")
age = Byte.Parse(ReadLine())
Catch e As FormatException
WriteLine(e.Message)
End Try
WriteLine("Nom : " + nom)
WriteLine("Adresse:"+ adresse)
WriteLine("Age:"+age.ToString)
ReadLine()
End Sub
End Module
Pro
fesseu
r M
.QB
AD
OU
12
VB.NET II. Elments du langage VB.NET
II.2.3
nomVar = expression
Liste des oprateurs et priorit :
L'expression peut tre de type : arithmtique, boolenne,
Catgorie Oprateurs
Arithmtique ^ , , * , / , \ , Mod , +
Affectation =, ^= , *= , /=, \=, +=, -=, &=
Relationnelle =, , , =, Like, Is,TypeOf...Is
Concatnation & , +
Logique/ binaire
Not, And, Or, Xor, AndAlso, OrElse
Autres AddressOf , GetType
Priorit Oprateurs
1 ()
2 ^
3 Unaire : - , +
4 *, /
5 \
6 Mod
7 +, -
8 &
9
10 =, ,, =, Like, Is,TypeOf...Is
11 Not
12 And, AndAlso
13 Or, OrElse
14 Xor
Pro
fesseu
r M
.QB
AD
OU
13
VB.NET II. Elments du langage VB.NET
II.2.4. Fonctions standards
Fonctions mathmatiques : Fonctions et constantes
Cos, Sin, Tan, Acos, Asin, Atan2, Cosh, Sinh, tanh, Sqrt, Pow, Exp, Log, Log10, Abs, Floor, Ceiling Round, Max, Min,
Fonctions dfinies dans la classe Math.
Exemple :
Dim r1, r2 As Double
r2 = Math.Sqrt(Math.E^9)
r1 = Math.Cos(Math.PI/3)
Fonctions sur les chanes : Fonction Description
StrComp Comparer deux chanes.
InStrRev , StrReverse Inverser une chane.
Format, LCase, Ucase Convertir en minuscules ou en majuscules.
Len Trouver la longueur d'une chane.
InStr , Left, LTrim , Mid, Right, RTrim , Trim Manipuler des chanes.
Asc, AscW, Chr, ChrW Travailler avec des valeurs ASCII et ANSI.
Replace Remplacer une sous-chane spcifie.
Filter Retourner un tableau de chanes bas sur un filtre.
Split, Join Retourner un nombre spcifi de sous-chanes.
Pro
fesseu
r M
.QB
AD
OU
14
VB.NET II. Elments du langage VB.NET
II.3.1. Structure conditionnelle
Condition
Action
if condition then
actions_si_vrai
[else
actions_sinon]
end if
II.3.2. Structure slective
select case expression
case Val_1
Action_1
case Val_2
Action_2
...
[case else
Actions_sinon]
end select
Val_i peut avoir les formes suivantes:
idem avec les operateurs =,=,
val1 to val2
val1[,val2,val3,
is > val1
Pro
fesseu
r M
.QB
AD
OU
15
VB.NET II. Elments du langage VB.NET
II.3.3. Structure rptitives
For compteur [As Type]=val1 To val2 [Step pas]
Actions
Next [compteur]
a. Nombre de rptions connu
For Each element [ As Type ] In groupe
[ actions ]
Next [ element ]
I val1 2 [, pas]
...
Action
Do { While | Until } condition
[ blocAction]
Loop
b. Nombre de rptions inconnu
Condition
...
Action
Do
[blocAction]
Loop { While | Until } condition Condition
...
Action
Pro
fesseu
r M
.QB
AD
OU
16
VB.NET II. Elments du langage VB.NET
II.3.4. Actions de rupture
Exit for
Exit do
Environment.Exit(0)
Un programme VB.NET peut avoir la structure simple suivante :
' options
Option
' espaces de noms
Imports ....
Module nomDuModule
Sub main()
....
End Sub
End Module
Exemple
Option Explicit On
Imports System.Console
Imports System.IO
Module Essai
Dim rep As DirectoryInfo
Sub Main()
WriteLine(Environment.GetEnvironmentVariable("windir"))
rep=New DirectoryInfo(Environment.CurrentDirectory())
WriteLine(rep.FullName)
ReadKey()
End Sub
End Module
Pro
fesseu
r M
.QB
AD
OU
17
VB.NET II. Elments du langage VB.NET
Arguments du programme principal
args est un tableau de chanes qui reoit les arguments passs sur la ligne
de commande lors de l'appel du programme :
args.Length est le nombre d'lments du tableau args
args(i) est l'lment i du tableau
Exemple
Imports System.Console
Module Test_arg
Sub main(ByVal args() As String)
writeline("Il y a " & args.length & " arguments")
For i as integer = 0 To args.Length 1
WriteLine("argument n " & i & "=" & args(i))
Next i
End Sub
End Module
La procdure principale Main peut admettre comme paramtre un tableau
de chanes : Sub main(ByVal args() As String)
Pro
fesseu
r M
.QB
AD
OU
18
VB.NET
II.6. Les tableaux de donnes
II. Elments du langage VB.NET
Un tableau VB.NET est un objet permettant de rassembler sous un mme
identificateur des donnes de mme type. Sa dclaration est la suivante :
' Tableau une dimension
Dim nomTab(n) as Type
Dim nomTab() as type=New type(n) {}
Dim nomTab() as type={v0,v1,...,vn}
' Tableau deux dimension
Dim nomTab(n,m) as Type
Dim nomTab(,) as Type=New Type(n,m) {}
Dim nomTab(,) As Type
' Tableau de tableaux
Dim Tableau(n)() as Type
Dim Tableau()() as Type=new Type(n)()