TP
TP
TP
OFPPT
Office de la Formation Professionnelle et de la Promotion du Travail
REMERCIEMENT : 3
INTRODUCTION : 3
INTERFACE VB.NET: 3
TP N° 1 CREATION D’UNE INTERFACE 3
TP N° 2 LES FONCTIONS 3
TP N° 3 LES FORMULAIRES 3
TP N° 4 STRUCTURES ET TABLEAUX 3
TP N° 5 ÉNUMERATION, STRUCTURE ET COLLECTION 3
TP N° 6 LES EVENEMENTS, LES CASES A COCHER ET LES CASES OPTIONS 3
TP N° 7 L’EVENEMENT CLOSING ET REGROUPEMENT DES CONTROLES 3
TP N° 8 LISTBOX ET L’EVENEMENT ENABLED 3
TP N° 9 LA BOUCLE FOR…NEXT 3
TP N° 10 L’ÉVÉNEMENT KEYPRESS 3
TP N° 11 LISTE SÉLECTION 3
TP N° 12 ARRAYLIST, CLASSE 3
TP N° 13 TABCONTROL 3
TP N° 14 RITCHTEXTBOX,CONTEXTMENU,COLORDIALOG, FONTDIALOG 3
TP N° 15 LES FICHIERS, LES MENUS, DATAGRID 3
NOTES : 3
CONCLUSION : 3
Remerciement :
tiens à remercier tous mes amis de classe sauf les ennemis de la connaissance,
qu’il a fait pour nous afin de nous mettre dans la bonne voie du développement.
Mme NAJAT.
Introduction :
dans le développement informatique, j’ai opté la réalisation d’un petit travail qui
met en œuvre l’un des langages les plus répondus au monde, c’est le VB.NET de
Le lecteur de ce petit rapport constatera que le point a été met sur le coté
pratique et non plus la théorie, la chose que le lecteur doit savoir avant de
Bonne lecture ☺
Interface VB.NET:
Boîte à outils Fenêtre des propriétés
(Non active = barre grise) Espace de travail VB Propriétés de l’objet
Sélectionné (Form2)
Explorateur de solution
Un formulaire (Form) sélectionné
De nom ‘Form1
Objectifs
Travail Demandé :
1. Créer l’interface ci-dessous
Figure 2.
Solution :
TP N° 2 les fonctions
Objectifs
Dans ce TP vous allez être capable de manipuler les fonctions sous VB.NET.
Travail demandé :
1. créer l’interface suivante.
Figure 3.
Solution :
Voici une proposition pour la création des fonctions :
Return a / b
End If
End Function
TP N° 3 les Formulaires
Objectifs
Travail Demandé :
Figure 4
Figure 5
Proposition de solution:
Module Module1
Public a As New Form1
Public b As New Form2
Public texte As String
Sub main()
a.Text = "Formulaire1"
b.Text = "Formulaire2"
Application.Run(a)
End Sub
End Module
Form1 :
Form2 :
TP N° 4 Structures et Tableaux
Objectifs
Travail Demandé :
1. créer les interfaces suivantes ?
Figure 6 Figure 7
2. ajouter un module dans lequel en va créer une structure client (nom, prénom,
age) ?
3. déclarer un tableau du type client dans le même module ?
4. le click sur le bouton « ajouter » permettra de remplir le tableau
5. « Lister » affichera le deuxième formulaire.
6. « Afficher » du deuxième formulaire permettra de remplir la liste à partir du
tableau.
7. les boutons « Quitter » et « Fermer » permettent de quitter l’application.
8. Testez votre application, trop marrant ☺.
Proposition de solution
-Déclaration du module :
Module Module1
’Sub main:
Public Sub main()
Application.Run(f1)
End Sub
End Module
txtnom.Focus()
End Sub
End Sub
Objectifs
Dans ce TP, Essayant de maîtriser l’utilisation de l’énumération, structure
et collection.
Et un nouveau contrôle, datetimepicker.
Travail Demandé :
Figure 8
Figure 9
Proposition de solution:
Module Module1
Public Enum TE
Permanent = 0
Temporaire = 1
Intermitant = 2
End Enum
End Module
Form1:
With emp
.DateEmbauche = DateTimePicker2.Value.Date
.DateNaissance = DateTimePicker1.Value.Date
.NomEmployé = txt1.Text
.Fonction = txt2.Text
.type = ComboBox1.SelectedItem
End With
Col.add(emp)
vider()
End Sub
f2.Show()
Me.Hide()
End Sub
Form2:
Objectifs
Travail Demandé :
Figure 10
MessageBoxButtons.YesNo, MessageBoxIcon.Question)
End Function
Objectifs
Travail Demandé :
Figure 11
2. créer une fonction qui calcule la remise tel que la remise est de 0% pour
une quantité de livres inférieure à 5, et 5% pour une quantité entre 5 et 10,
et 8% pour une quantité entre 10 et 20, et une remise de 10% pour une
quantité supérieure à 20.
3. programmer le bouton « RAZ » pour que les zones de texte reçoivent la
valeur 0.
4. programmer le bouton quitter à ta manière amigos.
5. tester votre application.
Proposition de solution :
End Sub
Objectifs
Travail Demandé :
Figure 12
Proposition de solution :
End Sub
TP N° 9 La boucle For…Next
Objectifs
Dans ce TP vous aller utiliser la boucle for afin de rechercher un caractère dans
une chaîne de texte.
Travail Demandé :
Figure 13
TP N° 10 L’événement keypress
Objectifs
Travail Demandé :
Figure 14
Proposition de solution :
TP N° 11 Liste sélection
Objectifs
Dans ce TP vous allez connaître les différents types de sélection dans une
listbox.
Travail Demandé :
1. créer l’interface ci-dessous.
Figure 15
Proposition de solution :
End Sub
End Sub
TP N° 12 Arraylist, Classe
Objectifs
Travail Demandé :
1. créer l’interface ci-dessous :
Figure 16
Cette application a pour but la gestion des règlements. Elle permet entre autres le
calcul du montant que doit payer le client après une séance de navigation.
Il existe trois types de clients :
Etudiant : il paye 15 DH /heure
Fonctionnaire : il paye 20 DH /heure
Abonné : il paye 6 DH /heure
Le Cyber café offre trois services :
Navigation : 0DH de plus pour chaque client /heure
Visioconférence : 20DH de plus pour chaque client /heure
Navigation Assistance : 10DH de plus pour chaque client /heure
’Création du constructeur
Sub New(ByVal a As Integer, ByVal b As String, ByVal c As
String, ByVal d As Integer, ByVal e As String, ByVal f As
Integer, ByVal g As Date)
m_nreg = a : m_client = b : m_typeclient = c : m_nump = d
m_serut = e : m_nbrh = f : m_date = g
End Sub
End Class
Form1 :
tab={"navigation","visioconférence","navigation assistance"}
tsu.Items.AddRange(tab)
tt.SelectedIndex = 0
tsu.SelectedIndex = 0
End Sub
Sub calcul()
Dim t As Single
Select Case tt.Text
Case "etudiant"
t = 15
Case "fonctionnaire"
t = 20
Case "abonné"
t = 6
End Select
Select Case tsu.Text
Case "navigation"
tm.Text = (t * CDbl(tnh.Text)).ToString
Case "visioconférence"
tm.Text = CDbl(t * tnh.Text + (tnh.Text * 10))
Case "navigation assistance"
tm.Text = CDbl(t * tnh.Text + tnh.Text * 20)
End Select
End Sub
i += 1
Next
End If
End Sub
Sub raz()
tn.Text = ""
tc.Text = ""
tt.SelectedIndex = 0
tn.Text = ""
tsu.SelectedIndex = 0
tnh.Text = ""
td.Text = ""
tnp.Text = ""
tn.Select()
End Sub
End If
i += 1
Next
End If
End Sub
Remplirzones()
pos = i
Exit Sub
End If
i += 1
Next
MsgBox("l'élément recherché n'existe pas ????!!!!",
MsgBoxStyle.Critical, "Recherecher....")
End Sub
TP N° 13 tabcontrol
Objectifs
Figure 17
Figure 18
2. écrire une procédure qui permet d’intercepter l’écriture des lettres dans les zones de
texte.
3. « ok » permet de calculer la somme des deux nombres et le produit des deux nombre
dans la feuille « produit ».
4. « Annuler » permet de vider les zones de texte.
5. « Quitter » pour sortir de l’application.
Solution :
Sub intercepter(ByVal e As
System.Windows.Forms.KeyPressEventArgs)
If Char.IsDigit(e.KeyChar) Or AscW(e.KeyChar) = 8 Or
e.KeyChar = "," Then
e.Handled = False
Else
e.Handled = True
End If
End Sub
TextBox6.Text = TextBox1.Text
TextBox5.Text = TextBox2.Text
TextBox4.Text = ""
End Sub
TP N° 14
Ritchtextbox,ContextMenu,ColorDialog,
FontDialog
Objectifs
Figure 19
En introduisant
les éléments ici
En double
cliquant ici pour ET
ajouter un menu
contextuel
En
sélectionnant
Figure 20
Solution :
Texte.Cut()
End Sub
Objectifs
Dans ce TP nous vous proposons une interface contenant des menus dans le but
de gérer des stagiaires à l’aide des fichiers textes, et en listant les stagiaires dans
une datagrid.
Figure 21
Figure 22
Figure 23
Figure 24
Figure 25
Proposition de solution :
Module :
Module Module1
Public Structure stagiaire
Private m_code As Long
Private m_nom As String
Private m_prenom As String
Public Property code() As Long
Get
Return m_code
End Get
Set(ByVal Value As Long)
m_code = Value
End Set
End Property
Public Property Nom() As String
Get
Return m_nom
End Get
Set(ByVal Value As String)
m_nom = Value
End Set
End Property
Public Property Prenom() As String
Get
Return m_prenom
End Get
Set(ByVal Value As String)
m_prenom = Value
End Set
End Property
End Structure
Public enr As stagiaire
Public fs As FileStream
Public rd As StreamReader
Public wr As StreamWriter
Public f1 As New Form1
Public f2 As New Form2
Sub main()
Application.Run(f1)
End Sub
End Module
Form1 :
Public tab() As String
Private Sub Form1_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles MyBase.Load
If Not File.Exists("c:\aziz.dat") Then
fs = New FileStream("c:\aziz.dat",
FileMode.CreateNew)
wr = New StreamWriter(fs)
MenuItem7.Enabled = False
Else
fs = New FileStream("c:\aziz.dat",
FileMode.Append)
wr = New StreamWriter(fs)
End If
End Sub
Sub vider()
Txtcode.ResetText()
Txtnom.ResetText()
Txtprenom.ResetText()
Txtcode.select()
End Sub
Form2 :
Public tab() As String
Public list As New Collection
Public Shared pos As Integer
Private Sub Form2_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles MyBase.Load
If Not File.Exists("c:\aziz.dat") Then
MsgBox("File Not Found", MsgBoxStyle.Information)
Else
fs = New FileStream("c:\aziz.dat", FileMode.Open)
rd = New StreamReader(fs)
Dim ligne As String
Do While rd.Peek <> -1
ligne = rd.ReadLine
tab = ligne.Split(";")
enr.code = CInt(tab(0))
enr.Nom = tab(1)
enr.Prenom = tab(2)
list.Add(enr, enr.code.ToString)
Loop
End If
pos = 1
Try
lire(pos)
Catch ex As Exception
End Try
rd.Close()
End Sub
fs = New FileStream("c:\tmp.dat",
FileMode.CreateNew)
wr = New StreamWriter(fs)
fs = New FileStream("c:\aziz.dat", FileMode.Open)
rd = New StreamReader(fs)
Dim ligne As String
Do While rd.Peek <> -1
ligne = rd.ReadLine
tab = ligne.Split(";")
If Not CInt(Txtcode.Text) = CInt(tab(0)) Then
wr.WriteLine(ligne)
End If
Loop
Try
list.Remove(Txtcode.Text.ToString)
Catch ex As Exception
MsgBox("Pas d'élément à supprimer!!!!!!",
MsgBoxStyle.Critical, "Erreur!!!!")
End Try
rd.Close() : wr.Close()
File.Delete("c:\aziz.dat")
Rename("c:\tmp.dat", "c:\aziz.dat")
'---------------------------------------------------------
Try
lire(pos)
Catch ex As Exception
If list.Count < 1 Then
vider()
Else
pos -= 1
lire(pos)
End If
End Try
End If
End Sub
Sub vider()
Txtcode.ResetText()
Txtnom.ResetText()
Txtprenom.ResetText()
End Sub
Form3 :
Surcharger le constructeur :
Public Sub New(ByVal CollStag As Collection)
MyBase.New()
'Cet appel est requis par le Concepteur Windows Form.
InitializeComponent()
MaColl = CollStag
'Ajoutez une initialisation quelconque après l'appel
InitializeComponent()
End Sub
Notes :
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
..............................................................................................................................
Conclusion :
J’espère que vous avez trouvé au moins ce que vous cherchiez, et que ce