Introduction to .NET Environment and Visual Basic.Net

1/88
100%
Rendu du PDF...
Page 1 sur 88Lecteur de document UniversityLib

Introduction to .NET Environment and Visual Basic.Net

Programming and Software Development · lab

Voir tous les documents en programmation

Environnement de d veloppement

Sabra MABROUK

1

Plan du cours

(cid:1) Chapitre 1: Introduction lenvironnement .NET

(cid:1) Chapitre 2: El ments de base du langage Visual basic.Net

(cid:1) Chapitre 3: Les contr les de Visual basic.Net

(cid:1) Chapitre 4: Concepts de base de la P.O.O. sous Visual

(cid:1) Chapitre 4: Concepts de base de la P.O.O. sous Visual

basic.Net

(cid:1) Chapitre 5: La gestion des fichiers textes sous Visual

basic.Net

(cid:1) Chapitre 6: ADO.Net et bases de donn es sous Visual

basic.Net

2

Chapitre 1

Chapitre 1

Introduction lenvironnement .NET

3

EDI vs Framework

(cid:1) Environnement de d veloppement int gr (EDI):

(cid:1) EDI: Un logiciel regroupant un ensemble d'outils pour le

d veloppement dapplications (Eclipse, NetBeans, Code::Blocks,

WinDev, Visual Studio, etc.).

(cid:1) A ne pas confondre avec framework:

(cid:1) Un ensemble de composantes logicielles (code source) qui

servent cr er des applications selon une architecture bien

d termin e.

d termin e.

(cid:1) En P.O.O. framework = ensemble de classes

(cid:1) Exemples de frameworks:

(cid:1) Django : applications web, architecture MVC, langage

Python

(cid:1) Zend : applications web, MVC, PHP

(cid:1) .NET : applications windows, app. Web, app. Mobiles;

architecture bas e sur des couches, langages: C++, C#, J#, VB.

4

Framework .Net

(cid:1) Cest un framework de Microsoft

(cid:1) Version 1.0 (2002)(cid:1)Version 4.6.1 (2015)

(cid:1) Le framework .net permet de d velopper:

(cid:1) Des applications windows classiques

(cid:1) Des applications web

Des applications web

(cid:1) Des applications mobile

(cid:1) Des services windows et des services web

(cid:1) Framework bas sur CLI (Common Language

Infrastructure) et CLR (Common Language Runtime)

5

Architecture .Net

6

Framework .Net

(cid:1) Traditionnellement, la compilation dun code source produit un

code binaire sp cifique un syst me dexploitation et un

microprocesseur.

(cid:1) La compilation dun programme .net (cid:1)code g n rique

(ind pendant de tout syst me logiciel ou hardware).

(cid:1) A lex cution, ce code (Common Intermediate

Language) est confi une machine virtuelle.

Language) est confi une machine virtuelle.

(cid:1) La MV traduit le code CIL en instructions sp cifiques pour le

microprocesseur de la machine.

(cid:1) Traduction au fur et mesure des besoins (compilateur JIT

(Just In Time)).

(cid:1) Pour ex cuter une application sur plusieurs plateformes

logicielles et/ou mat rielles, il suffit dobtenir la MV ad quate.

7

Framework .Net

8

Framework .Net

(cid:1) La MV est disponible pour tous les syst mes Windows

(cid:1) Le projet Mono (cid:1)propose des MV pour Linux, MacOS,

SUN Solaris, OpenBSD, etc.

(cid:1) Avantage: Toutes les classes du Framework sont

accessibles par tous les langages compatibles .net

9

La Base Class Library

(cid:1) La BCL est une biblioth que de classes (ind pendante du langage

de programmation) qui est hi rarchis e selon le Namespace :

regroupement logique des classes.

(cid:1) Les classes sont extensibles (via le m canisme dh ritage)

(cid:1) Les namespaces les plus utilis s:

(cid:1) System : le namespace racine de tous les types de donn es dans le

framework (contient la classe Object: anc tre de toutes les classes).

framework (contient la classe Object: anc tre de toutes les classes).

(cid:1) System.Windows : Les classes permettant de construire les interfaces

utilisateurs windows.

(cid:1) System.Web : Les classes n cessaires pour la cr ation dapplications

Web.

(cid:1) System.Data: Les classes n cessaires pour lacc s aux bases de

donn es.

(cid:1) System.Xml : Les classes n cessaires pour manipuler les documents

XML.

10

Visual Basic.Net

(cid:1) VB.net est un langage de programmation orient objet.

(cid:1) Evolution du langage VB :

(cid:1) VB 1.0 (1991) (cid:1)VB 3.0 (1993) : langage de programmation classique

(cid:1) VB 4.0 (1995)(cid:1) VB 6.0 (1998) : grandes am liorations et tr s grand

succ s de VB6.

(cid:1) VB.Net 2002 / VB.Net 2003 / VB.Net 2005 / VB.Net 2008 / VB.Net

(cid:1) VB.Net 2002 / VB.Net 2003 / VB.Net 2005 / VB.Net 2008 / VB.Net

2010 (cid:1)La nouvelle g n ration qui suit le d veloppement du

Framework .Net

(cid:1) Tout programme VB.Net est compil dans le m me langage

interm diaire (CIL) du Framework (C#, J#, C++, etc.).

(cid:1) Le d veloppement en VB.Net n cessite lEDI Visual

Studio.Net

11

Visual Studio.Net

(cid:1) Visual Studio.Net : LEDI incontournable de Microsoft :

permet de d velopper des applications web (ASP.Net),

des applications mobiles (windows mobile) et des

applications windows.

(cid:1) Il permet lutilisation des langages VB, VC++, VC# et VJ#

et assure tous ces langages le partage des

et assure tous ces langages le partage des

fonctionnalit s offertes par le Framework .Net.

(cid:1) Version actuelle : Visual Studio 2015.

(cid:1) Toutes les versions de Visual Studio sont payantes.

(cid:1) Microsoft offre les versions Express qui sont gratuites.

(cid:1) Il existe des versions Express gratuites et limit es

12

Microsoft Visual Basic Express 2010

13

Visual basic.Net

(cid:1) VB.net permet de cr er diff rents types de projets:

(cid:1) Des applictions windows (Application windows forms)

(cid:1) Des applications WPF (Windows Presentation Foundation):

Utilisent XAML (eXtensible Application Markup Language)

pour b n ficier du nouveau syst me daffichage de windows

vista et Windows 7.

vista et Windows 7.

(cid:1) Des applications console : sans interface graphique.

(cid:1) Des biblioth ques de classes (DLL) : utilisables dans dautres

projets.

(cid:1) Lorsquun type de projet est choisi, les namespaces

n cessaires sont automatiquement ajout s.

14

Les projets: Application windows forms

(cid:1) Dans un projet "application windows", on peux avoir plusieurs

types de fichiers .vb:

(cid:1) Des formulaires (interfaces, forms)

(cid:1) Les dessins des interfaces (les contr les dans linterface : boutons, zones

de texte, listes, cases cocher, etc.)

(cid:1) + Les proc dures v nementielles (locales) : associ es aux v nement

li s chacun des contr les de linterface

li s chacun des contr les de linterface

[+ des proc dures et/ou des fonctions (locales) non v nementielles].

(cid:1)

(cid:1) Des modules : utiles pour contenir les proc dures et

fonctions dites "dint r t g n ral" ainsi que les variables et/ou les

objets "globaux".

(cid:1)Touts les l ments dun modules (proc dures, fonctions, objets,

variables) sont accessibles par nimporte quel fichier form ou module

du projet (pourvu quils soient "public").

(cid:1) Des classes : cr er de nouvelles classes.

15

Les projets: Application windows forms

16

Chapitre 2

Chapitre 2

El ments de base du langage

Visual basic.Net

17

Les variables

(cid:1) Identifiant de variables:

(cid:1) Doit commencer par une lettre

(cid:1) Caract res autoris s: lettres minuscules, lettres majuscules,

chiffres et "_".

(cid:1) Pas de distinction entre minuscules et majuscules

(cid:1) Pas un mot r serv , sauf sil est encadr par [ ] (exemple:

(cid:1) Pas un mot r serv , sauf sil est encadr par [ ] (exemple:

).

(cid:1) Toute variable doit tre d clar e.

(cid:1) 2 familles de types de variables:

(cid:1) Types primitifs

(cid:1) Types r f rences (les objets)

18

Les types primitifs

19

Les types r f rences

(cid:1) Type Object : type universel

(cid:1) Type String : les chaines de caract res

(cid:1) Types Nullables : les types r f rences sont Nullabes

(NULL/Nothing)

(cid:1)

Il arrive parfois que dans certaines circonstances une variable na pas

de valeur bien d finie (r cup r e dune BD).

de valeur bien d finie (r cup r e dune BD).

(cid:1) Cette m thode permet aux variables de types primitifs de ne

contenir aucune valeur.

(cid:1)Utiliser '?' dans la d claration. (Dim CodePostal ? as integer)

(cid:1) D claration de variables :

Dim NomVariable1[,NomVariable2,NomVariableN]

Option Explicit Off (cid:1)rend la d claration facultative (d conseill e)

20

D claration de variables

(cid:1) Si le type est omis (cid:1)type par d faut Object

(cid:1) Toute variable est initialis e par une valeur par d faut:

(cid:1) Types num riques : 0

(cid:1) Chaine de caract res : "" chaine vide

(cid:1) Boolean : false

(cid:1) Object : null

(cid:1) Object : null

Inf rence de type : type d termin partir de la valeur

Publicité

initialisant la variable (Dim ch="Bonjour") (cid:1)ch : String

(cid:1)

(cid:1)Linf rence ne fonctionne quavec les variables locales une fonction

ou proc dure. (Option Infer On par d faut)

(cid:1)Initialisation sur la m me ligne que la d claration, sinon type :

Object.

(cid:1) variable non statique (Static Dim ch="abc")(cid:1)type : Object

21

Modificateurs dacc s aux variables

(cid:1) Public:

(cid:1)

l ments accessibles de nimporte quelle portion de code du projet dans lequel ils sont

d clar s et de nimporte quel autre projet r f ren ant celui dans lequel ils sont d clar s.

(cid:1) Ne peut pas tre utilis pour la d claration lint rieur dune proc dure ou fonction.

(cid:1) Protected:

(cid:1) Utilisable uniquement lint rieur dune classe. La variable est accessible par le code de la

classe et le code de toutes les classes h ritant de celles-ci.

(cid:1) Friend:

(cid:1)

(cid:1)

Les l ments seront accessibles de lassemblage dans lequel ils sont d clar s.

Les l ments seront accessibles de lassemblage dans lequel ils sont d clar s.

(cid:1) Ce mot cl ne peut pas tre utilis lint rieur dune proc dure ou fonction.

(cid:1) Protected friend:

(cid:1) Ce niveau dacc s est lunion des niveaux dacc s Protected et Friend.

(cid:1)

Il rend visible la variable lensemble de lassemblage dans lequel elle est d clar e et

toutes les classes h ritant de celle o elle est d clar e.

(cid:1) Private: (par d faut)

(cid:1) Ce mot cl restreint lacc s la variable au module, la classe ou la structure dans

laquelle elle est d clar e.

Il ne peut pas tre utilis lint rieur dune proc dure ou fonction.

(cid:1)Ces modificateurs remplacent Dim dans la d claration

(cid:1)

22

Les constantes

(cid:1) Const nomVariable=valeur

(cid:1) Constantes vb pr d finies les plus utilis es:

Nom de la constante

Valeur de la constante

vbCr

vbLf

vbLf

vbCrLf

Retour chariot (caract re n 13)

Saut de ligne (caract re n 10)

Saut de ligne (caract re n 10)

Combinaison retour chariot+saut de ligne

vbNullChar

Caract re Null (caract re n 0)

vbTab

vbBack

Tabulation (caract re n 9)

Retour arri re (caract re n 8)

23

Les tableaux

(cid:1) Tableau une seule dimension :

Dim nom_tab (const_int) as type

(cid:1)const_int : lindice de la derni re case du tableau

(cid:1)nom_tab contient (const_int+1) l ments

(cid:1)Type : tout type dans VB.Net (y compris les objets)

(cid:1)Type : tout type dans VB.Net (y compris les objets)

(cid:1)1 re case : indice 0 (cid:1)nom_tab(0)=4

(cid:1) Tableau 2 dimensions :

Dim nom_tab (const_int1, const_int2) as type

(cid:1)Acc s : nom_tab(i,j)

24

Les tableaux

(cid:1) Les tableaux sont des objets :

(cid:1) Length (propri t ) : taille du tableau (pour les tab 2 dim,

length donne le nombre d l ments).

x = t.Length

(cid:1) GetLength(dim) : m thode qui donne la taille de la dimension

dim dun tableau plusieurs dimensions.

x = mat.GetLength(0)

x = mat.GetLength(0)

y = mat.GetLength(1)

(cid:1) Rank (prop) : donne le nombre de dimensions dun tableau

nb_dim=mat.Rank (cid:1)nb_dim : 2

(cid:1) Classe Array :

(cid:1)

Ind=Array.IndexOf (tab,elt)

(cid:1) Array.Sort(tab)

25

Les tableaux

(cid:1) Redimensionner un tableau : Il est possible de

redimensionner des tableaux au moment de lex cution avec

les instructions :

(cid:1) Redim : Dans ce cas, toutes les anciennes valeurs seront perdues

Exemple : Redim Test(30)

(cid:1) Redim Preserve : Dans ce cas, on pr serve toutes les donn es

Exemple : Redim Preserve Test(30)

Exemple : Redim Preserve Test(30)

(cid:1) D claration dynamique :

a. Dim nom_tableau ( ) as type

b. D s quon saisit le nbr d l ments et avant la 1 re utilisation du

tableau :

Redim nom_tableau (nbr) as type

c. Utiliser le tableau

26

Les cha nes de caract res

(cid:1) Les cha nes de caract res sont des objets de type String.

(cid:1) Deux moyens pour manipuler les chaines:

(cid:1) Utiliser des fonctions de VB classique (d conseill )

Utiliser les propri t s et m thodes de la classe System.String:

(cid:1) Utiliser les propri t s et m thodes de la classe System.String:

27

Les cha nes de caract res

Exemples: Dim ch as String = "Cours VB.net"

" ch.chars(i) (cid:1)retourne ch(i)

" ch.Length (cid:1)retourne la longeur de ch

" ch.Substring(ind_deb,nb_car) (cid:1)retourne la souschaine de longeur

nb_car extraite partir de lindice ind_deb.

" ch1.Equals(ch2) (cid:1)retourne true si ch1=ch2, false sinon

" ch1.CompareTo(ch2) (cid:1)retourne un entier <0 (ch1<ch2); >0

" ch1.CompareTo(ch2) (cid:1)retourne un entier <0 (ch1<ch2); >0

(ch1>ch2); 0 (ch1=ch2).

(ch1>ch2); 0 (ch1=ch2).

" ch1.Insert(pos, ch2) (cid:1)insert ch2 dans ch1 lindice

" ch.TrimStart( ) / ch.TrimEnd( ) / ch.Trim( )(cid:1)enl ve les espaces

" ch.ToUpper( ) / ch.ToLower( ) (cid:1)majuscule / minuscule

" ch1.IndexOf(ch2[,ind]) (cid:1)recherche ch2 dans ch1 [ partir de

" ch.Replace(str1,str2) (cid:1)remplace dans ch toute occurence de str1

lindice ind]

par str2

28

Les enregistrements (structures)

(cid:1) Les structures permettent de regrouper des donn es de diff rents

types

(cid:1) D claration :

Public Structure nom_str

public champ1 as type1

public champ2 as type2

...

End structure

End structure

(cid:1) Champi : variable de tout type, structure, fonction ou proc dure.

(cid:1) Utilisation : dim v as nom_str

(cid:1) Acc s aux champs dune variable de type structure :

v.champ1=&v.champ2=... ...

(cid:1) Les structures ne sont pas des types r f rence

nom_str1=nom_str2 (cid:1)copie les champs et non pas les adresses

des structures.

29

Exemple 1 : Utilisation dune structure

1. D claration de la structure

2. D claration dune variables de type la structure

2. D claration dune variables de type la structure

d clar e

3. Affectation de valeurs aux donn es membres

30

Exemple 2

Private Structure employee

Public givenName As String

Public familyName As String

Public phoneNumber As Long

Private salary As Double

Public Sub giveRaise(ByVal raise As Double)

salary = raise

End Sub

Public Function salaryemployee() As Double

Public Function salaryemployee() As Double

Return salary

End Function

End Structure

*

Dim emp As employee

emp.givenName = "Mohamed"

emp.familyName = "Ben ali"

emp.giveRaise(200)

Console.WriteLine(CStr(emp.salaryemployee()))

31

Les op rateurs

(cid:1) Op rateur daffectation : = (qque soit le type)

(cid:1) Les op rateurs arithm tiques :

Op rateur

Op ration r alis e

+

-

-

*

/

\

Mod

^

Addition

Soustraction

Soustraction

Multiplication

Division

Division enti re

Modulo (reste de la

division enti re)

Puissance

32

Les op rateurs

Les op rateurs de comparaison

Op rateur Op ration r alis e

Exemple

R sultat

=

<>

<

>

<=

>=

Publicité

Like

Is

galit

in galit

Inf rieur

Sup rieur

Inf rieur ou gal

Sup rieur ou gal

galit de cha nes de caract res

2=5

2<>5

2<5

2>5

2<=5

False

True

True

False

True

2>=5

False

toto liket* True

Comparaison de deux variables objets O1 Is O2

True si O1 et O2 font r f rence

au m me objet

True si O1 ne fait pas r f rence

au m me objet que O2

IsNot

Comparaison de deux variables

Objets

O1 IsNot O2

TypeOf... Is& Comparaison du type de la variable

avec le type donn

TypeOf O1 IS

Client

True si O1 fait r f rence un

objet c partir du type Client

33

Les op rateurs

Les op rateurs logiques

Op rateur

Op ration

Exemple

R sultat

And

Or

Xor

Xor

Not

Et logique

If (test1) And (test2)

True si test 1 et test2 sont

True

Ou logique

If (test1) Or (test2)

True si test 1 ou test2 est True

Ou exclusif

Ou exclusif

If (test1) Xor (test2)

If (test1) Xor (test2)

True si test 1 ou test2 est True

True si test 1 ou test2 est True

mais pas si les deux sont True

N gation

If Not test

Inverse le r sultat du test

AndAlso

ET logique

If (test1) AndAlso (test2)

OrElse

Ou logique

If (test1) OrElse (test2)

Idem ET logique mais test2 ne

sera valu que si test1 est

True

Idem OU logique mais test2

ne sera valu que si test1 est

Faux

34

Les op rateurs

(cid:1) Les op rateurs de concat nation : & et + (d conseill )

(cid:1) Probl mes li s lop rateur + :

(cid:1) Si les deux op randes sont num riques, alors il y a addition.

(cid:1) Si les deux op randes sont de type String alors il y a concat nation.

(cid:1) Si un op rande est num rique et le deuxi me est de type String

alors un autre param tre entre en jeu :

Si le compilateur est configur avec loption Strict On une erreur de

(cid:1) Si le compilateur est configur avec loption Strict On une erreur de

compilation est g n r e.

(cid:1) Si le compilateur est configur avec loption Strict Off, la cha ne de

caract res est implicitement convertie en type Double puis additionn e.

Si la cha ne de caract res ne peut pas tre convertie en Double alors une

exception est g n r e.

(cid:1) Pour acc der aux options de compilations :

(cid:1) S lectionner un projet (cid:1)menu Projet (cid:1)menu Propri t s (cid:1)onglet

compiler

35

Conversion des types de donn es

36

Les instructions de base

(cid:1) Affichage :

(cid:1) Console.writeline(message )

(cid:1) Message : chaine de caract res entre " "

Lecture

(cid:1) Lecture

(cid:1) Var=Console.readline()

37

Les structures de contr le

Les structures de contr le

38

Les structures conditionnelles

1. If condition then

instruction1

...

Else

Instruction j

...

End If

<expressions> :

<expressions> :

  • Enti re
  • R elle
  • Bool enne
  • Chaine de caract res

2. Select case <expression>

2. Select case <expression>

case val1

bloc instruction 1

case val2

bloc instruction 2

...

case Else

bloc instruction else

End Select

39

Les structures conditionnelles

(cid:1) Exemples :

Select case reponse

case "oui","OUI"

console.writeline("reponse

positive")

case "non","NON"

console.writeline("reponse

console.writeline("reponse

negative")

case else

Console.writeline("reponse de

normand")

End select

Select case heure

Case 8,9,10,11,12

Console.writeline("Matin")

Case 13 to 18

Console.writeline("apr s-midi")

Case 19 to 22

Case 19 to 22

Console.writeline("soir")

Case is >=22

Console.writeline("nuit")

Case else

Console.writeline("heure

invalide")

40

End select

Les structures it ratives

1. For Compteur=valeur initiale To valeur Finale

Bloc dinstructions

Next

2. For each element in Collection 'Collection peut tre un

tableau

tableau

Bloc dinstructions

Next

3. While condition

Bloc dinstructions

End While

41

Les structures it ratives

1. Do While condition

Bloc dinstructions

Loop

2. Do until condition

Bloc dinstructions

Loop

Loop

3. Do

Bloc dinstructions

Loop While condition

4. Do

Bloc dinstructions

Loop until condition

42

Proc dures et fonctions

Proc dures et fonctions

43

Proc dures

1. Proc dure

Sub nom_Sub ( )

Bloc dInstructions

End Sub

(cid:1) Appel :

nom_sub

Ou

Call nom_sub ( )

44

Fonctions

2. Fonction

Function nom_function

( ) As type

Publicité

Bloc dinstruction

return res ou bien nom_function = var

End Function

End Function

(cid:1) Appel :

varRes = nom_fonction ( )

45

Passage de param tres

(cid:1) Pour chaque param tre dune fonction ou proc dure,

il faut sp cifier :

(cid:1) Le mode de passage (par valeur ou par r f rence)

(cid:1) Le nom

(cid:1) Le type

(cid:1) Mode de passage de param tres par valeur : ByVal

(cid:1) Mode de passage de param tres par r f rence : ByRef

(cid:1) Par d faut : cest ByVal

(cid:1) Exemple :

public Sub minMaxTab (ByVal T( ) as integer, ByRef min as integer, ByRef

max as integer)

...

End sub

46

Proc dures v nementielles

(cid:1) Les proc dures v nementielles indiquent :

(cid:1) L l ment de la feuille (form) d clenchant l v nement

(cid:1) L v nement d clencheur

(cid:1) Les actions (le code) faire lorsque l v nement est d clench

(cid:1) Sa syntaxe :

Private Sub cmdOK_Click (ByVal sender As

Private Sub cmdOK_Click (ByVal sender As

System.Object, ByVal e As System.EventArgs)

Handles cmdOK.Click

'Corps de la proc dure v nementielle

End Sub

(cid:1) Lex cution de la proc dure se fera automatiquement quand

lutilisateur clique sur le bouton ayant la propri t name=cmdOK.

47

Bo tes de dialogue

Bo tes de dialogue

48

Bo te de saisie

(cid:1) Permet lutilisateur de saisir une cha ne de caract res.

(cid:1) InputBox : 3 param tres:

(cid:1) Texte dans la boite (la question afficher lutilisateur)

(cid:1) Le titre de la bo te

(cid:1) Valeur par d faut du texte

(cid:1) Exemple : Dim resultat as String

resultat = InputBox("Veuillez saisir votre nom", "identification", "votre

nom")

Si Cancel alors

resultat (cid:2)chaine vide

49

Bo te de message

(cid:1) Permet dafficher une information lutilisateur en lui

donnant la possibilit de r pondre (par des boutons).

(cid:1) MessageBox.show : 3 param tres:

(cid:1) Texte dans la boite (Le message ou question afficher

lutilisateur)

(cid:1) Le titre de la bo te

(cid:1) Le titre de la bo te

(cid:1) Les boutons mettre dans la boite :

(cid:1) MessageBoxButtons.OK |OKCancel | AbortRetryIgnore |

YesNOCancel | YesNo | RetryCancel

(cid:1) Lic ne de la bo te :

(cid:1) MessageBoxIcon.Information|Exclamation|Error|Question|Hand

(cid:1) Bouton par d faut :

(cid:1) MessageBoxDefaultButton.Button1|Button2|Button3

50

Bo te de message

Dim rep As Integer

rep=MessageBox.Show("Voulez vous enregistrer en quittant

lapplication", "Fin de programme", MessageBoxButtons.YesNoCancel, _

MessageBoxIcon.Question,MessageBoxDefaultButton.Button1)

(cid:1) rep recevra : DialogResult.OK| DialogResult.Cancel |

DialogResult.Abort | &

DialogResult.Abort | &

(cid:1) 1 si OK

(cid:1) 2 si Cancel

(cid:1) 3 si Abort

(cid:1) 4 si Retry

(cid:1) 5 si Ignore

(cid:1) 6 si Yes

(cid:1) 7 si No

51

Chapitre 3

Chapitre 3

Les contr les de Visual basic.Net

52

Les contr les VB.Net

(cid:1) Les contr les permettent de cr er les interfaces (feuilles, formulaires)

dune application.

(cid:1) Chaque contr le est repr sent par une classe

(cid:1) Les contr les sont accessibles via la bo te outils

(cid:1) La majorit des contr les d rivent de la classe Control

(cid:1) Quelques propri t s h rit es :

(cid:1) Position et taille :

(cid:1) Position et taille :

ctrl.left|top|width|height=int

'ou bien ctrl.location=new Point(int,int) ' left,top

'ctrl.size=new Size(int,int) ' width,height

(cid:1) Apparence :

ctrl.backcolor=System.Drawing.color.Yellow

ctrl.forecolor=System.Drawing.color.Yellow

ctrl.font = New Font(System.Drawing.FontFamily.Genericserif,

16)

ctrl.backgroundImage = new Bitmap("open.bmp")

53

Les contr les VB.Net

54

Les familles de contr les

(cid:1) Contr les daffichage

(cid:1)

label, linkLabel, toolTip, errorProvider, notifyIcon, helpProvider,

progressBar

(cid:1) Contr les d dition de texte

(cid:1)

textBox, maskedTextBox, richTextBox

(cid:1) Contr les de d clenchement dactions

(cid:1) Contr les de d clenchement dactions

(cid:1) button, menuStrip, contextMenuStrip, toolStrip, toolStripContainer

(cid:1) Contr les de s lection

(cid:1)

checkbox, radioButton, listBox, numericUpDown, trackBar,

domainUpDown, chekckedListBox, comboBox, treeView, listView

(cid:1) Contr le de regroupement

(cid:1)

groupbox, panel, tabControl, splitContainer, flowLayoutPanel,

tableLayoutPanel

55

Les familles de contr les

(cid:1) Contr les graphiques

(cid:1) pictureBox, ImageList

(cid:1) Contr les de gestion du temps

(cid:1) dateTimePicker, monthCalendar, timer, backgroundWorker,

56

Propri t s des contr les

(cid:1) La d finition des propri t s des objets

utilis s dans linterface = affectation des

valeurs aux propri t s des contr les

utilis s dans cette interface.

(cid:1) La fen tre "Propri t s" permet de

r aliser cette t che de mani re facile

r aliser cette t che de mani re facile

(mode cr ation)

(cid:1) Il est possible de modifier les valeurs

des propri t s en mode ex cution

(par du code source).

57

Propri t s des contr les

(cid:1) Chaque contr le poss de une propri t NAME

(cid:1) On prend comme convention: pr fixer les noms des contr les

par 3 lettres qui permettent de reconna tre son type :

(cid:1) Form : frm

(cid:1) CommandButton : cmd

(cid:1) CheckBox : chk

(cid:1) Label : lbl

(cid:1) Label : lbl

(cid:1) Menu : mnu

(cid:1) OptionButton : opt

(cid:1) TextBox : txt

(cid:1) ComboBox : cmb

(cid:1) ListBox: lst

(cid:1) Frame: fra

(cid:1) Etc.

58

Les contr les daffichage

(cid:1) Label

(cid:1) name : lbl&

(cid:1)

text : contenu (ce qui est affich )

(cid:1) autosize : (T,F) d termine si le contr le doit tre automatiquement

redimensionn pour sadapter au contenu.

font (en mode cr ation)

(cid:1)

ou (en mode ex cution)

lblNom.font.bold

lblNom.font.size

lblNom.font.name

lblNom.font.italic

etc.

59

Les contr les daffichage

(cid:1) LabelLink

(cid:1) name : lnk&

(cid:1) H rite toutes les

propri t s du contr le

label

(cid:1) Permet de g rer des

(cid:1) Permet de g rer des

liens

(cid:1) LinkArea : la partie du

label qui activera le lien

(cid:1) Evt : linkClicked ( )

60

Les contr les daffichage

(cid:1) ToolTip

(cid:1) Contr le invisible : permet dajouter chaque contr le de la

feuille une propri t tooltip sur tooltipx (texte de linfo-bulle)

(cid:1) name : tlp&

(cid:1) AutoPopDelay : dur e daffichage de linfobulle en ms.

61

Les contr les daffichage

(cid:1) ErrorProvider

(cid:1) Contr le invisible : utile lors de la validation des donn es

dun formulaire

(cid:1) name : err&

Publicité

(cid:1) Il faut appeler la m thode SetError en sp cifiant le nom

(cid:1) Il faut appeler la m thode SetError en sp cifiant le nom

du contr le qui pose probl me et le texte affich de

linfobulle associ e au contr le.

(cid:1) Sil ny a pas derreur, il faut r initialiser le texte pour

faire dispara tre lic ne du contr le ErrorProvider.

62

Les contr les daffichage

(cid:1) Exemple :

If Not IsNumeric(TextBox1.Text) Then

errP1.SetError(TextBox1, " Valeur num rique Obligatoire ")

Else

errorP1.SetError(TextBox1, "")

End If

End If

63

Les contr les d dition de texte

(cid:1) TextBox

(cid:1) Permet la saisie dinformation

(cid:1) name : txt&

(cid:1)

text : le texte dans la zone de texte

(cid:1) Autosize (T|F)

(cid:1) maxlength : longueur max du texte

(cid:1) passwordChar : sp cifie un caract re pour cacher le texte

passwordChar : sp cifie un caract re pour cacher le texte

(cid:1) characterCasing : normal|upper|lower

(cid:1) multiline : (T|F) texte sur une seule ou plusieurs lignes

(cid:1) wordwrap (T|F): indique si le retour la ligne se fait

automatiquement lorsquon atteint la fin de la zone de texte multiligne

scrollbars : none|horizontal|vertical|both : affiche des barres de

d filement dans la zone de texte multiligne

selectedText : r cup re le texte s lectionn

(cid:1)

(cid:1)

64

Les contr les d dition de texte

(cid:1) MaskedTextBox

(cid:1) Permet la v rification automatique des informations saisies

(cid:1) name : mtxt&

(cid:1) Mask : d termine le format des infos qui vont tre saisies : on

peut choisir un mask existant ou configurer son propre mask.

65

Les contr les d dition de texte

(cid:1) Caract res sp ciaux

(cid:1) 0 : un chiffre obligatoire (0 9)

(cid:1) 9 : un chiffre ou un espace optionnel

(cid:1) L : une lettre obligatoire (de a z ou A Z).

(cid:1) ? : une lettre optionnelle.

(cid:1) C : un caract re quelconque

(cid:1) . : le s parateur d cimal

(cid:1) , : le s parateur des milliers

(cid:1) , : le s parateur des milliers

(cid:1) : : le s parateur horaire

(cid:1) / : le s parateur de date

(cid:1) $ : le symbole mon taire

(cid:1) < les caract res suivants seront transform s en minuscules.

(cid:1) > les caract res suivants seront transform s en majuscules

(cid:1) | annule leffet des deux caract res > et <

(cid:1) \ caract re d chappement faisant perdre sa signification sp ciale au caract re

suivant

(cid:1) Tous les autres caract res sont affich s tels quils sont dans le contr le.

66

Les contr les de d clenchement

dactions

(cid:1) Button

(cid:1) name : cmd&

(cid:1) text : le texte du bouton de commande

(cid:1) enabled : (T|F) indique si le bouton est activ ou pas.

(cid:1) visible : (T|F)

(cid:1) Les propri t s acceptButton et cancelButton dun

Les propri t s acceptButton et cancelButton dun

formulaire (objet form):

(cid:1) Pour associer la touche Enter un click dun bouton cmdB1 (cid:1)

acceptButton (cid:2)cmdB1

(cid:1) Pour associer la touche Esc un click dun bouton cmdB2

(cid:1)cancelButton (cid:2)cmdB2

67

Les contr les de d clenchement

dactions

(cid:1) MenuStrip

(cid:1) name : mnu&

(cid:1) Permet de cr er des menus avec des sous-menus

(cid:1) ShortCutKeys

68

Les contr les de d clenchement

dactions

(cid:1) ToolStrip

(cid:1) name : tls&

(cid:1) Permet de cr er une barre doutils.

(cid:1) Contient un assistant pour g n rer automatiquement une

barre doutils avec toutes les fonctionnalit s de base dune

application.

application.

(cid:1)cliquer sur la petite fl che pr sente sur la droite du contr le

et choisir loption Ajouter des l ments standard.

(cid:1)Pas de code g n r pour les clicks sur ces diff rents boutons: il

faut crire le code.

69

Les contr les de s lection

(cid:1) Checkbox (choix multiple)

(cid:1) name :chk&

(cid:1) text : le texte affich cot de la case

(cid:1) checked : (T|F) indique l tat de la case cocher (T:

s lectionn e)

(cid:1) threeState : (T|F) T: la case poss de 3 tats (s lectionn e,

(cid:1) threeState : (T|F) T: la case poss de 3 tats (s lectionn e,

non s lectionn e, ind termin )

70

Les contr les de s lection

(cid:1) RadioButton (choix exclusif)

(cid:1) name :opt&

(cid:1) text : le texte affich cot de loption

(cid:1) checked : (T|F) indique l tat de la case cocher (T:

s lectionn e)

NB. Si on avait un autre ensemble de boutons radio concernant

NB. Si on avait un autre ensemble de boutons radio concernant

l tage(rdc, 1er Et, 2 me Et), il faut les placer dans un contr le

Panel pour pouvoir s lectionner le nombre de pi ces et l tage

simultan ment.

71

Les contr les de s lection

(cid:1) ListBox

(cid:1) name : lst&

(cid:1) Liste choix multiples

(cid:1) Les l ments de la liste sont des cha nes de caract res.

(cid:1)

items: permet de remplir la liste (les l ments constituent une

collection appel e Items)

sorted : (T|F) liste tri e ou pas

sorted : (T|F) liste tri e ou pas

selectionMode : (none|one|multiSimple|multiExtended)

(cid:1)

(cid:1)

(cid:1)

(cid:1) M thodes :

(cid:1)

(cid:1)

(cid:1)

(cid:1)

(cid:1)

lstNbPieces.items.add("s+0")

lstNbPieces.items.insert(ind,element)

lstNbPieces.items.removeAt(ind)

lstNbPieces.items.clear()

ind=lstNbPieces.findString("elt")

72

Permet dutiliser les

touches shift et Ctrl

pour la s lection

Les contr les de s lection

(cid:1) ListBox

(cid:1) Dans le cas dune s lection simple (one):

(cid:1)

(cid:1)

selectedIndex : retrourne lindice de l l ment s lectionn de la

collection Items

selectedItem: retrourne l l ment s lectionn de la collection

Items

Dans le cas dune s lection multiple :

(cid:1) Dans le cas dune s lection multiple :

(cid:1)

selectedIndices: retourne une collection contenant les indices des

l ments s lectionn s.

slectedItems: retourne une collection contenant les l ments

s lectionn s.

(cid:1)

(cid:1)Il faut parcourir les listes pour avoir les l ments:

Dim o As Object

For Each o in lstNbPieces.SelectedItems

System.Console.WriteLine(o)

Next

73

Les contr les de s lection

(cid:1) CheckedListBox

(cid:1) Am lioration du contr le listBox

(cid:1) Les cases sont coch es ind pendamment de la s lection

(cid:1) R cup ration des cases coch es: collection checkedItems

For Each elt In CheckedListBox1.CheckedItems

Console.WriteLine(elt.ToString)

Next

Next

Ou bien

For i = 0 To CheckedListBox1.Items.Count - 1

If CheckedListBox1.GetItemChecked(i) = true Then

Console.WriteLine(CheckedListBox1.Items(i))

End If

Next

74

Les contr les de s lection

(cid:1) ComboBox

(cid:1) name : cmb&

(cid:1) Liste choix unique

(cid:1) Association entre listBox et textBox : lutilisateur peut choisir ou

simple

saisir une option.

(cid:1) dropDownStyle : (simple|dropDown|dropDownList)(cid:1)indique le

mode de fonctionnement du comboBox

mode de fonctionnement du comboBox

(cid:1) Simple : liste affich e en permanence: lutilisateur choisit ou saisit une

valeur

(cid:1) Dropdown : liste affich e la demande

(cid:1) Dropdownlist : lutilis...