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...