Académique Documents
Professionnel Documents
Culture Documents
Plan du cours
Introduction au VB.NET Langage basic Les outils de cration de linterface Gestion derreurs Fichiers
Plan
Introduction Prsentation de lenvironnement Les objets La programmation vnementielle La cration dapplications en VB.NET
Interface Code
Introduction
Langage de programmation oriente objet Langage de programmation vnementielle Langage de programmation visuelle
Environnement de VB.NET
Les contrles sont des objets graphiques qui permettent de constituer des applications interface Windows.
Le formulaire est le composant de base de toute application VB.net Ajout dautres contrles par le menu Project/Add Component
Cours VB.NET par BI et LM 1re anne ENIM
Les objets
Combinaison de :
Les proprits
Chaque objet de VB possde diffrentes proprits qui dfinissent son aspect Modification des proprits :
Lors de lexcution :
10
Les Mthodes
Les mthodes appliquent des actions aux objets. Pour agir sur lobjet (appel de la mthode) :
Nom_Objet.Nom_Mthode()
Exemple :
Form1.show() Form1.Hide()
Pour chaque application, on peut dfinir quel formulaire souvrira le premier:
Indication :
Project/NomProjet properties/ onglet application Slectionner dans la liste : Startup form, la feuille de dmarrage
Cours VB.NET par BI et LM 1re anne ENIM
11
Programmation vnementielle
Lexcution ne suit pas un ordre prdfini contrairement la programmation traditionnelle comme le C ou Pascal La procdure vnementielle porte le nom du contrle associ au nom de lvnement
Button1_Click() : appel de cette procdure lors du clic sur le contrle Button1 Form1_load() : appel de cette procdure lors du chargement du formulaire 1 Text_box1_KeyUp() : survient quand on relche la touche
12
13
diteur de code
Un diteur syntaxique :
dtecte les instructions errones au fur et mesure quon les entre (soulign en bleu)
Bleu correspond aux mots cls Vert correspond aux commentaires (toute ligne commenant par un guillemet simple) On lactive avec la touche F7
14
Projet VB.NET
MyForm.vb MyForm.designer.vb
Les modules de code ou de classes : .vb Le fichier gnral de description du projet : (.vbproj et .sln)
15
Sauvegarde / Excution
Sauvegarde
Plan
Introduction Les variables / constantes Dialogue avec lutilisateur : input output Les structures de contrles Les fonctions et procdures Porte des variables Les fonctions prdfinies
Cours VB.NET par BI et LM 1re anne ENIM
18
Variables
Dclaration de variable :
Dim <Nom variable> As <Type> Dim Taux as Single Dim Rponse as String
19
Types de variables
Boolean = true ou false Integer : de 32768 32767 Long : -2147483648 2147483647 Single : dcimaux en simple prcision Double : dcimaux en double prcision String : jusqu 65000 caractres Date : 1er Janvier 100 au 31 dcembre 9999
20
Const <Nom constante> = Expression Exemple : Const PI = 3.14 VB.net Comporte des constantes prdfinies.
21
Tableaux
Dim NomTab(borneInf to BorneSup) As Type Dim Semaine (1 to 7) as String Semaine(1) = " Lundi " Dim NomTab(BorneSup) as Type Dim Adresses(50) as String
22
Show : Methode de la classe MessageBox permet dafficher le message Message : message que lon veut crire il peut tre du texte ou du contenu dune variable (Prompt) Caption : le texte saffichant dans la barre de titre (Caption) Type_Button : Indique quel type de bote va safficher (Style) Rep : la valeur renvoye de type DialogResult qui indique le numro du bouton choisi par l'utilisateur.
Cours VB.NET par BI et LM 1re anne ENIM
23
MessageBoxButtons.AbortRetryIgnore :
MessageBoxButtons.YesNoCancel :
MessageBoxButtons.YesNo :
MessageBoxButtons.RetryCancel :
etc
Recommencer et Annuler
24
25
Bote de saisie
Permet de saisir une information par le biais dune bote de dialogue Syntaxe :
Rponse = InputBox(Invite,Titre,Valeur,Xpos,Ypos) Invite = texte afficher pour guider lutilisateur (Prompt) Titre = titre de la fentre (Title) Valeur = valeur par dfaut affich dans la zone de saisie (DefaultResponse) Rponse= contient la valeur saisie par lutilisateur de type String
26
Oprateurs
Oprateurs arithmtiques :
Oprateurs permettant d'effectuer des calculs mathmatiques. Oprateurs permettant d'effectuer des comparaisons. Oprateurs permettant de combiner des chanes. Oprateurs permettant d'effectuer des oprations logiques.
Oprateurs de comparaison :
Oprateurs de concatnation :
Oprateurs logiques :
27
Oprateurs arithmtiques
+: addition classique - : soustraction * : multiplication / : diviser deux nombres et renvoie en rsultat un nombre virgule flottante (Double) \ : Diviser deux nombres et renvoie un nombre entier ^ : Permet d'lever un nombre une puissance. Mod : Permet de diviser deux nombres en ne renvoyant que le reste
28
Oprateurs de comparaison
< : infrieur , <= : infrieur ou gal > : suprieur >= : suprieur ou gal = : gal <> : diffrent de Exemple: prix_vente > 120
Peut tre valu vrai (True) ou faux (False) selon que la valeur de la variable prix_vente est suprieure 120
29
Oprateurs de concatnation
L'oprateur & permet de runir la suite des chanes de caractres Si on l'utilise avec une chane et un nombre, le nombre est automatiquement converti en chane Exemple
MsgBox ("nom Facult : " & nomFacult) Str1 = nomFacult & " " & adresseFacult
Cours VB.NET par BI et LM 1re anne ENIM
30
Oprateurs logiques
une expression compose de conditions simples relis par des oprateurs logiques.
Exemple:
31
32
Branchement Conditionnel
If Condition Then [Instructions] End If If Condition Then [Instructions] Else [Instructions] End if If <condition1> Then <instructions 1> ElseIf <condition2> Then <instructions 2> Else <instructions 3> End If
33
Choix Multiple
34
Boucle For
35
Do While
Do While Condition
Instructions Loop La condition est teste au dbut
Do
Instructions Loop While Condition La condition est teste la fin de la boucle
36
Do Until
Do Until Condition
Instructions Loop La condition est teste au dbut
Do
Instructions Loop Until Condition La condition est teste la fin de la boucle
37
38
Permet de regrouper des donnes diffrentes. Exemple de dfinition dun modle de structure
Public Structure Eleve Dim ID As Integer Dim Nom As String Dim Prenom As String Dim Note As Double End Structure
Elle doit tre dclare dans la partie dclarations dun module ou dune classe et non pas dans une procdure
Cours VB.NET par BI et LM 1re anne ENIM
39
Structure (suite)
ou With Mon_eleve
.ID = 1238 .Nom = "Tintin" .Prenom = " Milou" .Note = 15 End With
40
Structure (suite)
41
Procdures
End sub BYVAL : paramtre est pass par valeur BYREF : paramtre est pass par adresse ou rfrence
42
Fonctions
Nom_fonction =variable_calcule
43
L appel se fait simplement par son nom suivi de la liste des paramtres effectifs
44
La porte des variables diffre selon le lieu de dclaration. On distingue trois possibilits :
45
Niveau Procdure
46
Niveau Formulaire
Les variables dclares dans la section Dclarations dune feuille peuvent tre Private ou Public Private : disponible pour toutes les procdures de la feuille, et ce par la syntaxe suivante :
Public <Nom variable> as <Type> Il faut spcifier le nom de la feuille si on veut utiliser la variable en dehors de la feuille. Exemple : nom_formulaire.nom_variable
Cours VB.NET par BI et LM 1re anne ENIM 47
Niveau module
Les variables dclares dans la section Dclarations du module peuvent tre Private ou Public Dclarations:
48
Private : signifie que la fonction [procdure] est utilisable par toutes les procdures et les fonctions du mme module. (lieu de sa dfinition).
Public : signifie que la fonction [procdure] peut tre appele par toutes les procdures et les fonctions du projet.
Cours VB.NET par BI et LM 1re anne ENIM
49
Type String
Mettre en majuscules une chane de caractres Mettre en minuscule Permet de supprimer des caractres avant et aprs la chane de caractres Taille d'une chane en nombre de caractres Mise bout bout
Cours VB.NET par BI et LM 1re anne ENIM 50
ToLOwer :
Trim :
Length :
Concat :
Dim Message as string Message = " bonjour " Message = Message.ToUpper => Message = " BONJOUR " Message=Message.Trim(" ") => Message ="BONJOUR" Dim A,B,C as string A ="Dupond " B = "Anne" C = string.concat(A,B) => C = "Dupond Anne"
51
Dim R as double R = Math.Min(2,3) => R = 2 R = Math.Max(2,3) => R = 3 R = Math.Pow(2,3) => R = 8 R = Math.sqrt(9) => R = 3 R = Math.abs(-7) => R = 7
52
Autres fonctions
Dim MyVar as Object Dim R as Boolean MyVar ="45" R = IsNumeric (MyVar) => R = True MyVar = "45 kg" R = IsNumeric(MyVar) => R = False
53
PLAN
Formulaire Bouton de commande Labels Zones de texte Cases cocher Listes Cration de menu Grilles
55
Rappels
56
La procdure vnementielle
End Sub
Exemple : Private Sub BtOk_Click (ByVal sender As System.Objet, ByVal e As System.EventArgs) Handles BtOk.Click
End Sub
Cours VB.NET par BI et LM 1re anne ENIM
57
Private Sub : La procdure vnement est prive donc accessible uniquement dans le module. BtOk_Click : Aprs le mot Sub il y a un nom de procdure. Ce nom est construit avec le nom du contrle et l'vnement. Sender : indique le contrle ayant dclench l'vnement. c'est un Objet. sender.Name contient par exemple le nom du contrle ayant dclench l'vnement.
58
e : C'est une variable de type SystemEventArgs qui permet de connatre l'vnement qui dclench la procdure. Handles : Indique quel objet et vnement dclench la procdure. Handles BtOk.Click indique que c'est l'vnement Click sur l'objet BtOk qui dclenche la procdure.
Cours VB.NET par BI et LM 1re anne ENIM 59
Le composant de base de toute application VB Une feuille principale Form1 On peut ajouter dautres fentres par :
Menu Project : Ajouter un formulaire (Add Windows Form) Form1 est une fentre cre avec la classe WindowsForms.Form
Suppression de feuille par Edit/Delete ou par menu contextuel Enregistrement de la feuille avec lextension Form1.vb par le menu File/Save as
60
Proprits du Formulaire
Name est commune tous les objets, il sert rfrencer lobjet dans le code. Accessible en mode conception uniquement. Text : le texte associ lobjet sur lcran. C'est le texte qui apparat la barre de titre en haut. Accessible en mode conception ou dans le code.
61
Proprits du Formulaire
Plein cran : FormWindowState.Maximized Normal : FormWindowState.Normal Dans la barre des tches : FormWindowState. Minimized
62
ControlBox : gre la prsence (True) ou non du menu systme FormBorderStyle : permet de choisir le type des bords de la fentre
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.Sizable
Me.Nom_proprit = valeur
63
Mthodes du Formulaire
Exemples :
Form1.Show() Form1.Hide()
64
Exemples dvnements :
Load (chargement) : cette procdure contient tout ce que lapplication doit faire au moment o le formulaire en question doit se charger en mmoire vive. MouseDown MouseMove
65
Bouton de commande
Name : Nom de lobjet utilis dans le code Text : ce qui saffiche sur le bouton de commande (Ok, Annuler ..) Enabled : actif pour True et inactif pour False FlatStyle : pour changer laspect du bouton
66
Label
Contrle inerte qui sert afficher un texte sur une feuille (tiquette) Lutilisateur ne peut pas saisir du texte sur ce contrle. Quelques proprits : Name, Text, Alignement et BorderStyle Autosize, etc.
67
TextBox
Cest une zone qui sert afficher une information saisie au clavier par lutilisateur Les zones de texte sont de type texte Pour convertir en valeur numrique on utilise la fonction :
68
TextBox : proprits
Quelques proprits :
Text : dsigne son contenu Multiline : autorise ou non lcriture sur plusieurs lignes Scrollbar, Passwordchar et Maxlength
69
Quelques vnements
KeyUp : survient quand on relche la touche KeyDown :survient quand on appuie sur une touche
70
On utilise KeyPress, il retourne un objet e E.KeyChar : contient la caractre press mais il est en lecture seule. Pour annuler la frappe : e.Handled = True
Exemple pour crire que des valeurs numriques :
If IsNumeric(e.KeyChar) Then e.Handled = False Else e.Handled = True End If
71
Contrles Cases
Cases cocher (CheckBox) : permettent des choix indpendants mme sils sont regroups dans un mme cadre (GroupBox)
Cases doptions (RadioButton) : permettent de choisir une seule option parmi un groupe de choix exclusif
72
Proprit :
vnement :
73
Utiliser un GroupBox
74
Contrles Listes
75
Proprits
ListBox1.Items.Count : indique le nombre d'lments dans la liste Le 1er lment de la liste est d'index 0
76
Mthodes de ListBox
Listbox1.items.add("Rabat") ListBox1.items.insert(4,"Safi") 'ajoute la 4me position ListBox1.items.removeat(5) :Enlve l'lment d'index 5 ListBox1.items.remove("Sal") :Enlve 'Sal' de la liste Listbox1.items.remove(listbox1.selecteditem) : Enlve l'lment slectionn ListBox1.items.clear
77
La commande Tools/Choose ToolBox/ Items Pour chaque Commande de menu, on utilise sa fentre de proprits
78
Lobjet : Grilles
Ajouter un objet de type : DataGridView Changer sa proprit Name : "Grille" Pour mettre 3 colonnes et 20 lignes dans la grille :
Grille.RowCount = 20 Grille.ColumnCount = 3
79
Grilles : suite
Grille.Item(i, j).Value = 12
.RowHeadersVisible = False : pas de premire colonne d'en tte des lignes .Columns(2).Width = 30 : dimensionner la largeur de la colonne 2
Cours VB.NET par BI et LM 1re anne ENIM 80
Grilles : suite
.AllowUserToAddRows = False .AllowUserToDeleteRows = False .AllowUserToOrderColumns = False .AllowUserToResizeColumns = False .AllowUserToResizeRows = False
81
Grilles : suite
82
Erreurs de syntaxe :
souligns en ondul bleu le code lors de la validation dtecter par le mode dexcution pas pas
Erreurs de logique :
Erreurs dexcution :
84
Erreurs de logique
Outils de dbogage :
Points d'arrt
85
Ouvrir un fichier qui n'existe pas (On aurait du vrifier qu'il existe avant de l'ouvrir!). Division par zro. Utiliser un index d'lment de tableau suprieur au nombre d'lment.
On lui demande de taper un chiffre, il tape une lettre ou rien puis valide ou vice versa
86
Erreurs dexcution
Try 'Instruction susceptible de provoquer une erreur. Catch ex as exception 'Traitement de l'erreur End Try
87
L'objet 'Exception'
Gnr par l'erreur. Catch ex As Exception Cet objet Exception des proprits:
Message qui contient le descriptif de l'erreur. Source qui contient l'objet qui a provoqu l'erreur.... ex.Message contient donc le message de l'erreur.
88
Gestion de fichiers
Ouverture du fichier
En lecture En criture
Fonctions de lecture et criture dans un fichier Fermeture du fichier Les boites de dialogues prdfinis
89
numro est un entier compris entre 1 et 255 nom du fichier est une chane de caractres mode est une valeur choisie parmi OpenMode.Input (ouverture en lecture), OpenMode.Output (ouverture en criture) ou OpenMode.Append (ouverture en ajout)
90
LineInput (NumroFichier) : Lit une ligne en entre depuis le fichier texte PrintLine (NumroFichier, texte) : crit le contenu de la variable texte dans le fichier
91
EOF (NumroFichier) :
'End Of File', (Fin de Fichier) il prend la valeur True si on est la fin du fichier et qu'il n'y a plus rien lire. 'Lenght Of File', il retourne la longueur du fichier en octets.
Permet de fermer le fichier
LOF (NumroFichier) :
FileClose(NumroFichier) :
92
Objet : OpenFileDialog
ShowDialog () : permet d'ouvrir la fentre d'explorateur des fichiers de windows Exemple de code :
With OpenFileDialog1 .Title= "Ouvrir" .InitialDirectory = "c:\" .Filter="Fichiers txt|*.txt" 'Titre de la barre de titre 'pour choisir le rpertoire de dpart 'pour limiter les types de fichiers .txt 's'il y a plusieurs filtres les sparer par ; 'FilterIndex indique le filtre en cours 'limite la slection 1 seul fichier
Objet : SaveFileDialog
ShowDialog () : permet d'ouvrir la fentre de l'explorateur des fichiers de type sauvegarde On utilise les mme proprits que l'objet OpenFileDialog
94
Rfrences
http://plasserre.developpez.com/cours/vb-net/ http://www.siteduzero.com/tutoriel-3-134798visual-basic-net.html
95