Un cours d'initiation en Visual Basic.
Merci de me faire part de vos remarques et suggestions pour le parfaire et le perfectionner via mon email:
pr.azizdarouichi@gmail.com
Support Dot Net avec C#. Ce cours traite les points suivants :
- Architecture .Net
- Les bases de C#
- Objet et Classe
- Héritage
- Encapsulation
- Polymorphisme
- Les exceptions
- Les entrées sorties
- Les interfaces graphiques
- Le multi Threading
- Programmation réseaux (Sockets et DataGram)
- Accès aux bases de données
Notions de base :
- programme
- programmation
- langages de programmation
Une petite introduction au langage C++ :
- Historique
- Place de C++ par rapport aux autres langages de programmation
Mettre en place les différents outils nécessaires pour pouvoir programmer en C++ :
- éditeur de texte
- compilateur
- débugger
les programmes « 3 in 1 » ou IDE - Environnement de Développement Intégré
Création et discussion de notre premier programme C++
Support du cours - Programmation Web 2
Niveau : Licence informatique - L1
Auteur : Faycel CHAOUA
Bibliothèque ISET Kélibia [SCI8 : 02-01-2018]
Licence : CC BY-NC-SA [https://creativecommons.org/licenses/by-nc-sa/4.0/deed.fr]
Présente une description complète sur les curseurs avec exemples et exercices corrigés. Ainsi, vous allez trouver:
- Définition des curseurs
- Curseurs implicites
- Curseurs explicites
- Les curseurs paramétrables
- Accès concurrents (FOR UPDATE)
- Variables de types Curseurs: Curseurs non typés et typés
-
Support Dot Net avec C#. Ce cours traite les points suivants :
- Architecture .Net
- Les bases de C#
- Objet et Classe
- Héritage
- Encapsulation
- Polymorphisme
- Les exceptions
- Les entrées sorties
- Les interfaces graphiques
- Le multi Threading
- Programmation réseaux (Sockets et DataGram)
- Accès aux bases de données
Notions de base :
- programme
- programmation
- langages de programmation
Une petite introduction au langage C++ :
- Historique
- Place de C++ par rapport aux autres langages de programmation
Mettre en place les différents outils nécessaires pour pouvoir programmer en C++ :
- éditeur de texte
- compilateur
- débugger
les programmes « 3 in 1 » ou IDE - Environnement de Développement Intégré
Création et discussion de notre premier programme C++
Support du cours - Programmation Web 2
Niveau : Licence informatique - L1
Auteur : Faycel CHAOUA
Bibliothèque ISET Kélibia [SCI8 : 02-01-2018]
Licence : CC BY-NC-SA [https://creativecommons.org/licenses/by-nc-sa/4.0/deed.fr]
Présente une description complète sur les curseurs avec exemples et exercices corrigés. Ainsi, vous allez trouver:
- Définition des curseurs
- Curseurs implicites
- Curseurs explicites
- Les curseurs paramétrables
- Accès concurrents (FOR UPDATE)
- Variables de types Curseurs: Curseurs non typés et typés
-
Ce premier cours présente les notions d'objet et de classe, et le lien entre elles. Il présente aussi le premier concept clé de la programmation orientée objet, à savoir l'encapsulation des données. Les exemples sont fournis dans plusieurs langages (Python, C#, Java, C++ et PHP).
Cours en C++ de la programmation procédurale à la POO.
Partie 1: La Programmation Procédurale.
Partie 2: La Programmation Orientée Objet.
Partie 3: Les Exceptions, Entrées/Sorties, Structures, Unions, Énumérations…
Partie 4: Les interfaces Graphiques avec Qt.
Si vous avez des remarques ou des suggestions afin d'améliorer ce support du cours merci de me contacter via pr.azizdarouichi@gmail.com
Ce Support de cours Spring contient :
- Architecture JEE (Over view)
- Spring Overview
- Spring IOC
- Spring MVC
- Spring Integration (RMI, JaxWS, JaxRS, JMS, JMX,...)
- Spring Security
Bon apprentissage à tous
Ce premier cours présente les notions d'objet et de classe, et le lien entre elles. Il présente aussi le premier concept clé de la programmation orientée objet, à savoir l'encapsulation des données. Les exemples sont fournis dans plusieurs langages (Python, C#, Java, C++ et PHP).
Cours en C++ de la programmation procédurale à la POO.
Partie 1: La Programmation Procédurale.
Partie 2: La Programmation Orientée Objet.
Partie 3: Les Exceptions, Entrées/Sorties, Structures, Unions, Énumérations…
Partie 4: Les interfaces Graphiques avec Qt.
Si vous avez des remarques ou des suggestions afin d'améliorer ce support du cours merci de me contacter via pr.azizdarouichi@gmail.com
Ce Support de cours Spring contient :
- Architecture JEE (Over view)
- Spring Overview
- Spring IOC
- Spring MVC
- Spring Integration (RMI, JaxWS, JaxRS, JMS, JMX,...)
- Spring Security
Bon apprentissage à tous
Newlook Suite est un ensemble d’outils intégrés qui simplifie et
améliore la modernisation de vos applications IBM i. Grâce à elle, les
développeurs peuvent sélectionner les outils qui répondront le mieux
aux exigences de chaque client. Tous les produits de la suite sont conçus à partir du même moteur de reconnaissance dynamique, et donc fonctionnent ensemble de façon harmonieuse.
Créez vos apps métier Windows 8 sans expertise en programmation, grâce à Proj...Microsoft
Les Apps bouleversent nos exigences dans un monde où "digital is business !" Tout un chacun s'attend désormais à pouvoir utiliser au quotidien des Apps adaptées à sa vie personnelle comme à sa vie professionnelle, spécifiques à ses objectifs, proposant l’attractivité visuelle et la fluidité qui font vraiment la différence, etc., tout ceci dans une logique de mise à jour et d’adaptation continue. Pour un assureur, une App pour aider un client à établir la couverture appropriée d’une liste d'objets de valeur doit bien évidemment être tout à fait différente d'une App pour enregistrer un sinistre sur un véhicule. Une App pour établir une offre commerciale pour une habitation principale doit être différente de celle destinée à un camping-car ou un bateau. Une App pour évaluer la couverture d’une résidence de prestige doit être différente de celle utilisée par un agent qui effectue des visites d’habitations en milieu rural. Une App mise en place pour assister les propriétaires à évaluer leur sinistre suite à état de catastrophe naturelle doit être différente de tout ce qui précède. Imaginez une pléthore d'Apps similaires pour une grande enseigne de la distribution, destinée à des tablettes pour les conseillers commerciaux pour partager des micro-expériences avec le client. Et ainsi de suite. Microsoft Project Siena, désormais disponible en bêta sur le Windows Store, permet à des experts d’un domaine d’utiliser eux-mêmes directement leurs expertises et leurs données afin de disposer rapidement, sans plus de compétences ou d'efforts que ceux nécessaires pour créer une feuille de calcul Excel ou une présentation PowerPoint, pour réaliser une App HTML/JavaScript leur permettant de répondre à leurs besoins. Microsoft Project Siena vous donne ainsi l’opportunité de créer rapidement et facilement une nouvelle catégorie d’Apps modernes spécifiques à un usage et qui rendent possible la création de nouveaux scénarios métiers pour aider les collaborateurs, les clients, etc. à prendre des décisions et à accomplir des tâches. Cette session sera l’occasion d’aborder et de découvrir cette technologie innovante dont l’objectif est de permettre à n’importe qui ou presque de développer des Apps modernes sur Windows 8.x en ne connaissant que PowerPoint et Excel, pour en tirer le meilleur parti (métier).
Speakers : Eric Vernié (Microsoft), Philippe Beraud (Microsoft), Luc Vo Van (Microsoft)
La plateforme de développement Microsoft pour les nulsMicrosoft
Jamais codé ? Ou jamais en .NET ? Quand vous voyez C#, vous lisez C dièse ? Cette session est faite pour vous. Son objectif est de proposer une découverte des outils de développement et des différents langages disponibles dans le monde Microsoft.
ASP.NET est un ensemble de technologies de programmation Web créé par Microsoft. Ce langage est utilisé pour créer des sites Webs dynamiques, des applications web ou des web services XML.
Le développement Web avec ASP.NET est plus facile: les applications Web sont développées comme des applications Windows en utilisant le modèle ASP.net ==> il s'agit d'une insertion du code (codebehind) C# ou VB.net dans des pages HTML (ajouter du JavaScript) est envoyé au client. On dit On dit que le C# et/ou VB.NET sont utilisés pour modifier le HTML
L'objectif de cette introduction est de :
- Comprendre le fonctionnement du Framework .Net
- Comprendre les principes de base de ASP.NET
- Faire la différence entre Page web Classiques et pages ASPX crées avec ASP.NET
Voici le chapitre 2 sur les chaînes de caractères en Java.
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture.
Chapitre 11: Expression Lambda et Référence de méthode en JavaAziz Darouichi
Voici le chapitre 11 sur les expressions lambda et les références de méthodes en Java.
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture.
Chapitre8: Collections et Enumerations En JavaAziz Darouichi
Voici le chapitre 8 sur les collections et les énumerations en Java.
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture.
Voici le chapitre 6 sur les classes et les interfaces en Java.
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture.
C'est la troisième partie du cours Business Intelligence et Data warehouse.
Si vous avez des questions, des remarques ou des propositions, n'hésitez pas de me les envoyer via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture
Voici la nouvelle version 2019 du chapitre sur les fonctions en C++:
https://fr.slideshare.net/AzizDarouichi/chap2fonctionscpp
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
C'est la nouvelle version 2019 du chapitre sur les tableaux en C++:
https://fr.slideshare.net/AzizDarouichi/chapitre3-tableauxcpp
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture
La deuxième partie sur le cours Business Intelligence et Data warehouse.
Si vous avez des questions, des remarques ou des propositions afin d’améliorer le contenu et la qualité de ce cours, n' hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture.
A. DAROUICHI
C'est le premier chapitre du cours en C++ de la programmation procédurale à la POO.
Partie 1: La Programmation Procédurale.
Partie 2: La Programmation Orientée Objet.
Partie 3: Les Exceptions, Entrées/Sorties, Structures, Unions, Énumérations…
Partie 4: Les interfaces Graphiques avec Qt.
C'est la version 2019 du chapitre 1 sur C++:
https://fr.slideshare.net/AzizDarouichi/chap1-cours-en-c
Si vous avez des remarques ou des suggestions afin d'améliorer ce support du cours merci de me contacter via pr.azizdarouichi@gmail.com
Bonne lecture
La première partie sur le cours Business Intelligence et Data warehouse.
Si vous avez des questions, des remarques ou des propositions, n' hésitez pas de me les envoyer via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture
C'est le chapitre 1 sur le langage Python qui est une introduction à ce langage.
Si vous avez des remarques ou des suggestions pour l’améliorer n’hésitez pas à m’écrire via ce courriel:
pr.azizdarouichi@gmail.com
Bonne lecture.
Voici le chapitre sur les classes et les objets en C++.
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture.
Voici le chapitre sur la surcharge des opérateurs en C++.
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture
Voici le chapitre sur les pointeurs et les références en C++.
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Bonne lecture.
Voici le chapitre sur les tableaux en C++.
La nouvelle version de 2019 est ici:
https://fr.slideshare.net/AzizDarouichi/chapitre3tableauxencppv2019
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
Voici le chapitre sur les fonctions en C++.
La nouvelle version 2019 est par là:
https://fr.slideshare.net/AzizDarouichi/chapitre2fonctionscppv2019
Si vous avez des remarques ou suggestions afin de le parfaire.
N’hésitez pas à me contacter via mon email:
pr.azizdarouichi@gmail.com.
2. Introduction
Pourquoi Visual Basic
L’un des langages de programmation les plus performants
et les plus simples à utiliser.
Créé par John G. Kemeny et Thomas E. Kurtz en 1963 et devient
vite un langage populaire.
2
3. Introduction
Pourquoi Visual Basic
Adapté sur PC par Bill Gates, au milieu des années 70.
La simplicité du langage VB explique son choix pour:
le développement d'interfaces.
Développement rapide d'applications
Accès aux bases de données
…
3
4. Introduction
Pourquoi Visual Basic
Les huit principes de conception du BASIC étaient :
Être facile d'utilisation pour les débutants (Beginner) ;
Être un langage généraliste (All-purpose) ;
Autoriser l'ajout de fonctionnalités pour les experts (tout
en gardant le langage simple pour les débutants) ;
Être interactif ;
4
5. Introduction
Pourquoi Visual Basic
Fournir des messages d'erreur clairs et conviviaux ;
Avoir un délai de réaction faible pour les petits
programmes ;
Ne pas nécessiter la compréhension du matériel de
l'ordinateur ;
Isoler l'utilisateur du système d'exploitation.
5
6. Introduction
Les dessous de Visual Basic
Microsoft a construit Visual Basic sur la base d’un langage de
programmation pour débutants : le BASIC.
6
7. Introduction
Les dessous de Visual Basic
Définition
BASIC = Beginner’s All-purpose Symbolic Instruction Code
(code d’instructions symboliques multifonction pour débutants).
7
8. Introduction
Exemple d‘un programme BASIC
10 REM Ce programme calcule et affiche les 10 premiers carrés.
20 CLS
30 PRINT "Carrés de 1 à 10"
40 PRINT "Valeur", "Carré"
50 FOR i = 1 TO 10
60 PRINT i, (i*i)
70 NEXT i
80 PRINT
90 END
8
9. Introduction
Exemple d‘un programme BASIC
Sortie du programme
Carrés de 1 à 10
Valeur Carré
1 1
2 4
3 9
4 16
5 25
6 36
7 49
8 64
9 81
10 100 9
10. Introduction
Les dessous de Visual Basic
Définition
Un langage de programmation est un ensemble de
commandes et d’options de commandes (les arguments) par
lequel on envoie des instructions à l’ordinateur.
Un langage de programmation doit être plus précis qu’un
langage naturel.
10
11. Introduction
Les dessous de Visual Basic
Multiples avatars:
MBASIC (pour Microsoft BASIC)
GWBASIC
BASICA (pour BASIC Avancé)
Quick-BASIC
Qbasic.
11
12. Introduction
Les versions de Visual Basic
• Visual Basic 1.0: sortie en mai 1991
• Visual Basic 6.0: sortie en 1998
12
13. Introduction
Exemples des langages dérivés
Visual Basic pour Application (VBA):
-Disponible avec MS Office (Excel, Access, Word,...)
Visual Basic .NET:
-Le successeur désigné de Microsoft à Visual Basic 6.0,
et fait partie de la plate-forme Microsoft .NET.
13
14. Introduction
Environnement de développement
Visual Studio
C’est une suite logicielle qui rassemble Visual Basic, Visual
C++, Visual C#,…
Microsoft nous propose généreusement une version «
Express » gratuite de chaque logiciel de cette suite,
Visual Studio Express.
Visual Basic 2010 Express
Télécharger Visual Basic Express edition sur le site de Microsoft,
cette version est gratuite et sans limitation de temps.
14
15. Introduction
Langage interprété vs langage compilé
Les langages interprétés, le programmeur peut exécuter
immédiatement son programme, voir sans délais les
résultats et les éventuelles erreurs.
Les langages interprétés, vous permettent d’exécuter le
programme à tout moment, alors que vous l’écrivez.
15
16. Introduction
Langage interprété vs langage compilé
Les langages compilés s’exécutent plus rapidement et sont mieux
appropriés au développement d’applications commerciales, mais
requièrent beaucoup plus d’efforts et d’apprentissage.
16
17. Introduction
Langage interprété vs langage compilé
Les langages compilés nécessitent des étapes supplémentaires,
la compilation et la liaison, avant que le programmeur ne puisse
exécuter son œuvre.
La compilation transpose le programme du langage dans
lequel il a été écrit au langage natif de l’ordinateur.
17
21. Introduction
Définitions
Bogue:
Un bogue (de l’anglais bug) est une erreur dans le programme.
Si votre programme ne s’exécute pas correctement, il vous
faudra le déboguer, c’est-à-dire éliminer une à une toutes les
erreurs.
21
23. Introduction
Editions de Visual Basic
Visual Basic Edition Entreprise
Créée pour la programmation en équipe et les environnements
client-serveur, où le traitement et les données sont distribués à
plusieurs ordinateurs.
23
24. Introduction
Editions de Visual Basic
Visual Basic Edition Professionnelle
Conçue pour les programmeurs professionnels qui
souhaitent exploiter pleinement l’environnement de
programmation Visual Basic.
24
25. Introduction
Editions de Visual Basic
Visual Basic Edition Initiation
L’essentiel de Visual Basic, avec un jeu complémentaire d’outils
standards-tout ce dont vous avez besoin pour vous lancer dans la
programmation Visual Basic.
25
27. Introduction
La nature visuelle de Visual Basic
Visual Basic.NETest plus qu’un simple langage de programmation.
Le secret de Visual Basic tient dans son nom : Visual.
Dans les systèmes d’exploitation Windows d’aujourd’hui,
les programmes doivent être capables d’interagir graphiquement
avec l’écran, le clavier, la souris et l’imprimante.
27
28. Introduction
Remarque importante
Souvenez-vous : vous ne pouvez simplement dire à l’ordinateur
ce qu’il doit faire et attendre qu’il fasse le boulot pour vous.
L’ordinateur n’est qu’une machine stupide et sans initiative ;
il a besoin pour travailler que vous lui fournissiez une liste détaillée
d’instructions.
28
29. Introduction
Remarque importante (suite)
Vous lui communiquez ces instructions sous la forme d’un
programme.
Un programme Visual Basic est constitué de codes et d’éléments
visuels qui définissent l’aspect de l’écran et les contrôles Windows
avec lesquels l’utilisateur interagit lorsqu’il lance le programme.
29
30. Introduction
Le processus de programmation
Étape 1: Déterminer ce que votre application devra faire en créant
un schéma général (partie conception).
Étape 2: Définir les caractéristiques ou propriétés des éléments
visuels qui composent l’interface, les écrans et les menus
avec lesquels l’utilisateur interagira (partie visuelle).
30
31. Introduction
Le processus de programmation
Étape 3: Ecrire le code de programmation en Visual Basic pour un
ou plusieurs éléments de l’interface en fonction des besoins,
(partie codage).
31
32. Introduction
Le processus de programmation
Étape 4: Tester l’application afin de déceler et d’éliminer tous
les
bogues (partie débogage).
Étape 5: Une fois les tests effectués, compiler le programme et
distribuer l’application compilée aux utilisateurs.
32
33. Introduction
Le processus de programmation
Grâce à la nature visuelle de Visual Basic, vous ne touchez au
clavier que bien plus tard dans le processus de programmation.
Au lieu d’utiliser du papier, vous dessinez directement vos écrans
à l’aide des outils Visual Basic.
Pour créer un tel écran, aucun code n’est nécessaire :
tout ce que vous avez à faire, c’est de faire glisser les divers contrôle
sur la fenêtre Feuilles.
33
35. Introduction
La maintenance du programme
La maintenance du programme est le terme employé pour désigner
la mise à jour du programme après sa distribution.
Cette mise à jour peut être le fait d’une demande des utilisateurs ou
d’un changement dans la façon dont le programme doit opérer.
35
36. Introduction
La maintenance du programme
Un programme est écrit une fois, mais retouché de nombreuses fois.
Mieux vous assurez cette maintenance du programme, plus votre
programme sera actuel et efficace.
Vous pouvez décider de distribuer une nouvelle version du programme
avec un numéro de version différent.
36
37. Introduction
La maintenance du programme
Remarque:
Il convient de commenter et de documenter votre code afin que
d’autres programmeurs puissent comprendre votre code s’ils devaient
le modifier par la suite.
37
39. Introduction
La programmation événementielle
L’utilisateur du programme de la Figure précédente pourrait cliquer
sur l’un des boutons, cocher l’une des cases ou activer l’une des
zones de liste déroulante.
Pour répondre efficacement aux actions de l’utilisateur et aux autres
activités propres à déclencher un événement, on emploie des
techniques de programmation événementielle.
39
40. Introduction
La programmation événementielle
Par événement, on désigne toute action qui se déclenche lors de
l’exécution du programme : clic de souris, frappe au clavier, etc.
Est orienté événement un programme qui réagit aux événements
Windows.
Un événement peut être provoqué par l’un des contrôles
(boutons de commande, cases à cocher, zones de liste déroulante,
barres de défilement...)
40
41. Prise de connaissance
La programmation événementielle
Un programme Visual Basic est constitué de l’interface visuelle,
fenêtres et contrôles, avec laquelle l’utilisateur interagit.
Le code de programmation vient relier tout cela ensemble.
41
42. Prise de connaissance
La programmation événementielle
Chacun des multiples contrôles est différencié par les propriétés que lui affecte le code.
42
43. Prise de connaissance en VB
Quiz
1) Sur quel langage Microsoft s’est-il fondé pour élaborer Visual Basic ?
Visual Basic est fondé sur le langage BASIC.
2) Pourquoi Visual Basic est-il adapté aux débutants comme aux
programmeurs confirmés ?
Visual Basic est un environnement visuel et exploite un langage
simple, dérive du BASIC.
Mais il permet de créer de puissantes applications Windows.
43
44. Prise de connaissance en VB
Quiz
3) Qu’est-ce qui est le plus important pour les novices en Visual Basic :
le langage de programmation ou l’interface visuelle ?
La nature visuelle de Visual Basic prime sur le langage de
programmation à plusieurs égards.
L’interface visuelle donne à vos programmes leur "visage" particulier
et interagit avec l’utilisateur.
Le langage de programmation travaille en coulisses pour connecter
l’ensemble des éléments visuels.
44
45. Prise de connaissance en VB
Quiz
4) Que signifient les termes bogue et déboguer ?
Un bogue est une erreur dans le programme.
Le débogage est le processus de correction des bogues.
5) Qu’est-ce qui s’exécute le plus vite : un programme écrit dans un
langage interprété ou un programme écrit dans un langage compilé ?
Les programmes écrits en langage compilé s’exécutent beaucoup
plus rapidement que les programmes écrits en langage interprèté.
45
46. Prise de connaissance en VB
Quiz
6) Quelle est la différence entre un contrôle et la valeur de propriété
d’un contrôle ?
Les contrôles sont des objets tels que labels, boutons de commande,
boutons d’option, etc., qui apparaissent sur la feuille.
Les propriétés et valeurs de propriétés d’un contrôle sont ce qui définit
son comportement et le distingue des autres.
46
47. Prise de connaissance en VB
Quiz
7) Les contrôles contiennent le code qui leur permet de réagir aux
actions de l’utilisateur. Vrai ou faux ?
Faux. Les contrôles ne contiennent pas de code.
Les contrôles sont des objets visuels avec lesquels l’utilisateur interagit.
47
48. Prise de connaissance
Démarrage de VB
Cliquer sur « Démarrer », sur « Programmes », puis sur le dossier
« Microsoft Visual Studio 2010 Express» ou cliquer directement su
l’icône de Microsoft Visual Studio 2010 Express existant sur le
bureau.
48
55. Prise de connaissance
L‘environement Visual Basic
55
Explorateur de
solutions
Boîte à outils
Fenêtre de
propriétés
Concepteur de
Windows Forms
Formulaire
57. Prise de connaissance
La Boîte à outils
Il s’agit d’une collection d’outils grâce auxquels vous
disposez
les contrôles standards et éventuellement ceux personnalisés
sur la feuille.
La boîte à outils nous sera d'une grande utilité lorsque
nous créerons la partie graphique de nos applications, mais
inutile lors de l'écriture du code VB.
57
59. Prise de connaissance
La Boîte à outils
Parmi les contrôles de la boîte à outils de Windows Forms :
59
◦ Button: bouton de commande
◦ CheckBox: Affiche une case à cocher et une étiquette
pour le texte. Généralement utilisé pour définir des
options.
◦ CheckedListBox: Affiche une liste déroulante d'éléments
accompagnés chacun d'une case à cocher.
◦ ComboBox : Affiche une liste déroulante d'éléments
◦ DateTimePicker: Affiche un calendrier graphique
permettant aux utilisateurs de sélectionner une date ou
une heure.
◦ Label : Affiche du texte que les utilisateurs ne peuvent
pas directement modifier.
60. Prise de connaissance
La Boîte à outils
Parmi les contrôles de la boîte à outils de Windows Forms :
60
◦ ListBox : Affiche une liste d'éléments texte et graphiques
(icônes).
◦ PictureBox: Affiche dans un frame des fichiers graphiques
tels qu'images bitmap et icônes.
◦ RadioButton: Affiche une case d'option qui peut être
activée ou désactivée.
◦ TextBox : Affiche un texte entré au moment du design et
pouvant être modifié par les utilisateurs au moment de
l'exécution ou par programme.
◦ RichTextBox: Permet l'affichage du texte au format texte
brut ou RTF.
◦ MaskedTextBox : Contraint le format d'entrée d'utilisateur.
61. Prise de connaissance
Concepteur Windows Forms
C’est dans le Concepteur Windows Forms, appelé aussi
formulaire (ou feuille), que vous effectuerez la plupart de vos
opérations.
Vous pouvez ajuster la fenêtre Formulaires (ou Feuilles) de
façon à donner aux fenêtres créées à l’intérieur les dimensions
voulues.
Il permet d’afficher les formulaires que contient votre projet,
avec leurs contrôles.
61
63. Prise de connaissance
Explorateur de solutions
L’explorateur de solutions, ou Fenêtre de solutions, contient
l’ensemble des composants de votre projet.
63
64. Prise de connaissance
Fenêtre Propriétés
La fenêtre des Propriétés décrit chaque propriété du contrôle
sélectionné.
C’est la fenêtre des propriétés qui va nous permettre, en mode
conception, de modifier les propriétés de nos objets.
N.B: Vous pouvez appuyer sur la touche F4 de votre clavier pour
afficher la fenêtre des propriétés.
64
65. Prise de connaissance
Fenêtre Propriétés
présente la liste des propriétés du contrôle sélectionné par
ordre alphabétique et affiche le choix des événements du
contrôle concerné.
65
66. Prise de connaissance
Outils de débogage
Lors de la compilation (Build) de votre application, les erreurs
importantes seront listées au niveau de cet onglet.
66
70. -4- Test et débogage de l'application
-5- Création d'un fichier exécutable
-6- Création d'un programme d'installation
Processus de développement d’un projetProcessus de développement d’un projet
avec VB.netavec VB.net
Propriétés Valeurs
Name
BackColor
Autosize
Visible
Font
TextBox1
Blue
True
True
Microsoft sansSérif 8pts
-1- Création de
l'interface utilisateur
-2- Définition des propriétés des objets de
l'interface utilisateur
Private Sub Form1_Load(………..) Handles Form1.Load
'Ajoutez votre code ici
End Sub
-3- Écriture de code pour l'ajout de fonctionnalités
71. Une feuille de travail « Form » représente une fenêtre ou
une boîte de dialogue qui compose l'interface utilisateur
d'une application.
Quelques propriétés :
Les Feuilles de travailLes Feuilles de travail (Form) (1/2)(Form) (1/2)
◦ BackColor: la couleur d'arrière-plan
◦ Font : la police du texte dans le contrôle
◦ Name: nom
◦ Size: la taille du formulaire
◦ Text : le texte associé à ce contrôle
◦ WindowState: indique si un formulaire est réduit, agrandi ou
normal. Au moment de l‘exécution
72. Quelques événements :
Les Feuilles de travailLes Feuilles de travail (Form) (2/2)(Form) (2/2)
◦ Closed: Se produit lorsque le formulaire est fermé.
◦ KeyPress : Se produit lorsqu'une touche est enfoncée alors
que le contrôle a le focus.
◦ LostFocus: Se produit lorsque le contrôle perd le focus.
◦ Load: Se produit avant l'affichage de la feuille (au moment de
son chargement dans la RAM).
◦ Shown : Se produit après l'affichage de la feuille.
73. Le contrôle Button Windows Forms permet à l'utilisateur
d'effectuer une action en cliquant dessus.
Quelques propriétés :
Les boutons de commandeLes boutons de commande (Button) (1/2)(Button) (1/2)
◦ BackColor: Obtient ou définit la couleur d'arrière-plan du contrôle.
◦ Font :Obtient ou définit la police du texte affiché par le contrôle.
◦ Name: Obtient ou définit le nom du contrôle.
◦ Image: Obtient ou définit l’image affichée sur le contrôle button.
◦ Text : Obtient ou définit le texte associé à ce contrôle.
74. Quelques événements :
Les boutons de commandeLes boutons de commande (Button) (2/2)(Button) (2/2)
◦ Click: Se produit suite à un clic sur le bouton
◦ DragDrop : Se produit lors d'une opération de glisser-déplacer.
◦ LostFocus: Se produit lorsque le contrôle perd le focus.
Private Sub BTN_Msg_Click( …….) Handles
BTN_Msg.Click
'Ajoutez votre code ici
End Sub
L’événement « Click »:
Lorsque l'utilisateur clique sur le bouton, ce dernier réagit
comme s'il était enfoncé puis relâché. Chaque fois qu'un
utilisateur clique sur un bouton, le gestionnaire
d'événements Click est appelé.
75. Atelier 1:Atelier 1: Familiarisation EDI et Bouton de commandeFamiliarisation EDI et Bouton de commande
Utilisation de l’EDI de VB
a. Examinez un formulaire dans le Concepteur Windows
Forms, ses propriétés et l'éditeur de code
b. Examinez les paramètres des propriétés des contrôles
c. Ouvrez, fermez, rouvrez et masquez la boîte à outils
Utilisation de formulaire et bouton de commande
a. Créer la feuille suivante:
75
76. Créer une application à partir de zéro
Atelier 2: Affichage Salam, tout le monde
On va créer un petit programme qui affiche:
Salam, tout le monde!
dés qu‘on clique sur le button.
76
77. Créer une application à partir de zéro
Atelier 3: Affichage Salam, tout le monde dans une zonte de texte
77
78. Créer une application à partir de zéro
Atelier 3: Version ameliorée
Afficher le nouveau message centré
Changer la couleur, le texte, la position, la taille
Solution:
txt1.ForeColor = Color.Red
txt1.TextAlign = HorizontalAlignment.Center
txt1.Text = "Salam, tout le monde"
txt1.Left = 10
txt1.Top = 10
txt1.Height = 50
txt1.Width = 50
78
79. Créer une application à partir de zéro
Atelier 3: Version ameliorée avec With
Solution:
With txt1
.ForeColor = Color.Red
.Text = "Salam, tout le monde"
.Left = 10
.Top = 10
.Height = 50
.Width = 50
End With
79
80. Créer une application à partir de zéro
Atelier 3: Version ameliorée avec Me
Solution:
Me.txt1.ForeColor = Color.Red
Me. txt1.TextAlign = HorizontalAlignment.Center
Me. txt1.Text = "Salam, tout le monde"
Me. txt1.Left = 10
Me. txt1.Top = 10
Me. txt1.Height = 50
Me. txt1.Width = 50
Remarque:
L'objet Me (autrement dit la fenêtre), il faut le lier au reste, utilisons donc le
caractère « . » : nous allons donc accéder aux objets et contrôles de cette
fenêtre.
80
81. Créer une application à partir de zéro
Atelier 3: Version ameliorée avec Me et With
Solution:
With Me.txt1
.ForeColor = Color.Red
.Text = "Salam, tout le monde"
.Left = 10
.Top = 10
.Height = 50
.Width = 50
End With
81
82. Créer une application à partir de zéro
Atelier 5: Affichage d‘une image avec la commande Quitter
82
83. Créer une application à partir de zéro
Atelier 6: Placer des contrôles sur une feuille
83
85. Créer une application à partir de zéro
Atelier 8: Mot de passe avec message d‘erreur
85
86. Analyse des données
Définition: Module
Un module est un fichier contenant du code de procédures.
Le fichier qui contient la feuille et son code est un module
de feuille.
Vous avez donc, sans le savoir, déjà travaillé avec des modules.
Module de feuille = contient la feuille et son code.
86
87. Analyse des données
Définition: Module
Remarque:
Un projet qui contient plusieurs feuilles contient plusieurs
modules de feuilles.
87
88. Analyse des données
Les données en Visual Basic
Les calculs peuvent impliquer différents types de données.
Par exemple, vous pouvez travailler sur des noms, des
adresses, des sommes d’argent, de grands et de petits
nombres, et des données logiques du type vrai/faux,
oui/non, etc.
88
89. Analyse des données
Les données en Visual Basic
Afin de répondre à tous les besoins des différents programmes,
Visual Basic supporte plusieurs types de données.
89
90. Analyse des données
Les données numériques
En règle générale, les données numériques relèvent d’une de
ces deux catégories :
Entiers: nombres entiers sans décimale, tels que 614 , 0, –934
ou 3 918 938.
Les entiers peuvent exprimer un âge, un numéral, un nombre
d’années, etc. En anglais, "entier" se dit integer.
90
91. Analyse des données
Les données numériques
Décimaux: nombres décimaux pouvant exprimer une valeur
fractionnaire, tels que 8.709, 0.005 ou –402.35534.
Les décimaux peuvent exprimer une température, une somme
d’argent, un taux d’intérêt, etc. Les décimaux exigent la virgule,
même si la partie décimale, située après la virgule, est zéro.
91
92. Analyse des données
Attention
Visual Basic stocke et traite différemment les entiers et les
décimaux, même si la différence n’est pas toujours évidente
pour nous autres humains.
Par exemple, –8 n’est pas la même chose, pour Visual Basic, que
–8.00.
92
93. Analyse des données
Les types de données numériques supportés par Visual Basic
93
Type Stockage Plage
Byte 1 octet De 0 à 255
Integer 2 octets De –32 768 à 32 767
Long 4 octets De –2 147 483 648 à 2 147 483 647
Single 4 octets De –3.402823E+38 à –1.401298E–45
1.401298E–45 à 3.402823E+38
Double 8 octets •–1.79769313486232E+308 à –4.94065645841247E–
324
•4.94065645841247E–324 à
1.79769313486232E+308
Currency 8 octets –922 337 203 685 477.5808 à 922 337 203 685
477.5807
94. Analyse des données
Suffixes Visual Basic désignant les types
94
Suffixe Type de données
& Long
! Single
# Double
@ Currency
95. Analyse des données
Autres types de données
Les types de données non numériques sont plus faciles à
comprendre que les types numériques, surtout si vous
n’êtes
pas spécialement fort en maths.
Le Visual Basic, laisse tous les autres langages loin derrière
lui quand il s’agit de traiter les chaînes de texte.
95
96. Analyse des données
Définition: Chaîne de caractères
Une chaîne est une série de caractères (une chaîne de zéro
caractère est encore une chaîne). Si ces caractères peuvent
être des chiffres, le contenu d’une chaîne ne peut jamais être
utilisé dans un calcul.
En revanche, il est possible de se servir des chaînes pour des
noms, des adresses, des codes, des numéros de sécurité
sociale, etc.
96
97. Analyse des données
Types de données non numériques supportés par Visual Basic
97
Type Stockage Plage
Char 2 octets
String Longueur de la chaîne Chaînes de caractères dont la longueur ne peut
excéder 231 caractères
Date 8 octets Du 1er janvier 100 au 31 décembre 9999
Boolean 2 octets True ou False
98. Analyse des données
Exemples des chaînes de caractères
"Hilare or de cymbale à des poings irrités "
"44-51-54-48"
"666, rue de la Bête"
" "
98
99. Analyse des données
Remarque sur les chaînes de caractères
Une chaîne nulle est une chaîne d’une longueur de zéro octet,
dont on se sert parfois pour réinitialiser le contenu d’une chaîne
(lui donner la valeur zéro).
99
100. Analyse des données
Remarque sur les chaînes de caractères
La valeur spéciale Null représente ce type de chaînes.
Visual Basic supporte aussi une valeur de chaîne spéciale dite
chaîne vide, représentée par le mot clé Empty.
100
101. Analyse des données
Remarque sur les chaînes de caractères
Les chaînes vides sont semblables aux chaînes nulles, mais sont
traitées d’une manière un peu différente : une propriété de contrôle
qui contient le mot clé Empty sera interprétée comme n’ayant
encore jamais été initialisée par quelque valeur que ce soit, pas
même une chaîne nulle.
101
103. Analyse des données
Les variables
Définition
Une variable est une zone de stockage temporaire en mémoire,
désignée par un nom unique.
On peut y stocker pratiquement tout ce qu'on veut, comme par
exemple des nombres, des phrases, des tableaux, etc.
Les variables reçoivent les valeurs et les calculs intermédiaires
attribués aux contrôles de la feuille et générés par eux.
103
104. Analyse des données
Déclaration des variables
Définition
Une variable est une zone de stockage temporaire en mémoire,
désignée par un nom unique. Les variables reçoivent les valeurs et
les calculs intermédiaires attribués aux contrôles de la feuille et
générés par eux.
104
105. Analyse des données
Déclaration des variables
Par défaut, la déclaration de variables est obligatoire
Possibilité de déclaration implicite (Non recommandée):
Option Explicit Off
Possibilité de déclaration sans préciser le type:
Option Infer On 'déduction suite à la 1ère
affectation
Exemple :
Dim Numero = 9 ⇔ Dim Numero As Integer = 9
105
106. Analyse des données
Syntaxe de déclaration des variables
Dim NomDeLaVariable As TypeDonnee
NomDeLaVariable: le nom donné à la variable.
TypeDonnee: l’un des types de données présentés aux Tableaux précédents.
106
107. Analyse des données
Préfixes décrivant le type de données d’une variable
107
Type Stockage Exemple
bln Boolean blnBoutonEnabled
byt Byte bytLength
cur Currency curSales98
dte Date dteOverdue
dbl Double dblScientificAmt
int Integer intYear2011
lng Long lngWeatherDistance
sng Single sngSales1stQte
str String strFirstName
108. Analyse des données
Quelques conventions de nommage des variables
Ne comporte que des lettres, nombres ou _
Commence par une lettre ou _
Ne peut être un mot clé
Longueur limitée à 33 caractères
Ne commence jamais par un nombre
Toujours préfixer la variable par son type de données.
108
109. Analyse des données
Exemples de déclarations de variables possibles
1)
Dim intTotal As Integer
Dim curSales99 As Currency
Dim dteFinal As Date
Dim strName As String
Dim blnIsChecked As Boolean
2)
Dim intTotal As Integer, curSales99 As Currency
109
111. Analyse des données
Les commentaires
Une ligne est considérée comme commentée si le caractère « ' »
(autrement dit, une simple quote) la précède ; une ligne peut
aussi n'être commentée qu'à un certain niveau.
'Commentaire
maVariable = 3* 4 ' Multiplie 3 et 4, et entre le résultat dans maVariable
111
112. Analyse des données
Remarque sur variable locale et variable globale
Si vous déclarez une variable à l’intérieur d’une procédure (qu’il
s’agisse ou non d’une procédure événementielle), alors la variable
est disponible pour toute la procédure, et seulement pour cette
procédure. Les autres procédures n’ont aucun accès à la variable,
qui ainsi reste locale, c’est-à-dire valable uniquement pour la
procédure qui la contient.
112
113. Analyse des données
Remarque sur variable locale et variable globale
Si, en revanche, vous déclarez une variable dans la section de
déclarations du module, cette variable sera disponible pour toutes
les procédures du module. La variable est alors globale pour le
module.
113
114. Analyse des données
Déclaration des constantes
Const nomDeLaConstante As TypeDeDonnée= valeur
Exemples:
1) Const pi As Single=3.14
2) Const x As Integer =140
Remarque:
Ajouter le mot clé Public pour la rendre publique
114
115. Analyse des données
Les opérateurs Visual Basic
115
Opérateur Signification Exemple Résultat
^ Puissance 2^3 8
* Multiplication 2*3 6
/ Division 6/2 2
+ Addition 2+3 5
- Soustraction 5-2 3
Mod Modulo 11 Mod 3 2
Division entière 113 3
+ ou & Concaténation de chaînes "Bon" & "jour" "Bonjour"
117. Analyse des données
Les opérateurs Visual Basic
Opérateurs abrégés
X += 6 X=X+6
Valable aussi pour les autres opérateurs :
-= *= /= = ^= &=
117
118. Analyse des données
Déclaration des chaînes
Dim strNomDeLaChaine As String
Exemples de déclarations de variables à longueur variable:
Dim strNomVille As String
Dim strNomBoulvard As String
118
119. Opérateurs et instructions de contrôle
Les opérateurs conditionnels
119
Opérateur Description Exemple Résultat
= Egal à 7 = 2 False
> Supérieur à 6 > 3 True
< Inférieur à 5 < 11 True
>= Supérieur ou égal à 23 >= 23 True
<= Inférieur ou égal à 4 <= 21 True
<> Différent de 3 <> 3 False
120. Opérateurs et instructions de contrôle
Comparaison des chaines de caractères
Les comparaisons de chaînes suivent ces règles générales :
Les lettres capitales valent moins que les minuscules ; ainsi,
"BONJOUR" vient avant "bonjour".
Les lettres se comparent selon l’ordre alphabétique ; ainsi, "A"
vaut moins que "B", et le nom "Walter" passe avant le nom
"William".
Les nombres valent moins que les lettres ; ainsi, "3" est plus
petit que "trois".
120
121. Opérateurs et instructions de contrôle
Comparaison des chaines de caractères
Remarque:
Une instruction spéciale peut apparaître dans la section de
déclarations d’un module :
Option Compare Text
Cette instruction, éventuellement associée à l’instruction
Option Explicit, a pour effet que les capitales et les minuscules
sont égales en comparaison.
121
122. Opérateurs et instructions de contrôle
Combinaison d’opérateurs conditionnels et logiques
122
Opérateur Description Exemple Résultat
And Chaque terme de l’expression doit
être True
(2 < 3) And (4 < 5) True
Or L’un des deux termes doit être
True
(2 < 3 ) Or (6 < 7) True
Xor OU exclusif: une seule des deux
conditions doit être vraie pour que
le résultat soit Vrai
( 1 = 1) XOR (2 = 2)
( 2 > 1) XOR (3 < 1)
False
True
Not Nie l’expression Not (3 = 3) False
123. Opérateurs et instructions de contrôle
Les instructions If ...Then...
Syntaxe
If condition Then
Bloc d’instructions Visual Basic
End If
Remarque:
Dans une instruction If, les parenthèses ne sont pas nécessaires
autour de la condition; en revanche, elles désignent clairement la
condition à interroger, et en cela clarifient le code.
123
124. Opérateurs et instructions de contrôle
Les instructions If ...Then...
Remarque:
Dans une instruction If, les parenthèses ne sont pas nécessaires
autour de la condition; en revanche, elles désignent clairement
la condition à interroger, et en cela clarifient le code.
124
125. Opérateurs et instructions de contrôle
Les instructions If ...Then...Else
Syntaxe
If condition Then
Bloc d’instructions 1Visual Basic
Else
Bloc d’instructions 2Visual Basic
End If
125
126. Opérateurs et instructions de contrôle
Instructions If... Else imbriquées
Syntaxe
If condition1 Then
Bloc d’instructions Visual Basic
ElseIF condition2 Then
Bloc d’instructions Visual Basic
Else
Bloc d’instructions Visual Basic
End If
126
127. Opérateurs et instructions de contrôle
Instructions If... Else imbriquées
Exemple
Dim moyenne As Short
Dim appreciation As String
If moyenne <10 Then
appreciatioon= "Echec"
ElseIf moyenne<=15 Then
appreciation= "Moyen"
Else
appreciation="Excellent"
EndIf
127
128. Opérateurs et instructions de contrôle
Les instructions Select Case
L’instruction Select Case est la plus appropriée pour vérifier
des conditions multiples.
L’imbrication successive de trois ou quatre instructions
If... Else complique considérablement le programme.
128
129. Opérateurs et instructions de contrôle
Les instructions Select Case
Select Case expression
Case condition
Bloc d’instructions Visual Basic
[ Case condition1
Bloc d’instructions Visual Basic]
[ Case condition2
Bloc d’instructions Visual Basic]
:
[ Case conditionN
Bloc d’instructions Visual Basic]
[Case Else
Bloc d’instructions Visual Basic]
End Select
129
130. Opérateurs et instructions de contrôle
Les instructions Select Case
Select Case choisit entre plusieurs conditions.
Le nombre de ces conditions, indiqué dans le corps [ Case
condition#...], varie selon la situation.
Si aucune des conditions n’est remplie, le corps de Case Else
(s’il y en a un) s’exécute.
130
131. Opérateurs et instructions de contrôle
Les instructions Select Case comparent des valeurs multiples
Dim Age As Integer
Select Case Age
Case 18
Label1.text = "conduire"
Case 23
Label1.Text = "travailler"
Case 60
Label1.Text="retraite "
End Select
131
132. Opérateurs et instructions de contrôle
Les instructions Select Case comparent des valeurs multiples
Select Case txtGrade.Text
Case "A"
lblAnnounce.Text= "Très bien "
Case "B"
lblAnnounce. Text = "Bien "
Case "C"
lblAnnounce. Text = "Peut mieux faire"
Case "D"
lblAnnounce. Text= "Médiocre "
Case "E"
lblAnnounce. Text= "Mauvais"
Case Else
lblAnnounce. Text = "Note non validée"
End Select 132
133. Opérateurs et instructions de contrôle
Les instructions Select Case
Visual Basic supporte un autre format de Select Case, qui permet
de spécifier, par le mot clé Is, un opérateur conditionnel pour
chaque condition.
133
134. Opérateurs et instructions de contrôle
Comparaisons conditionnelles dans Select Case
Select Case txtGrade.Text
Case Is >= 18
lblAnnounce. Text = "Très bien "
Case Is >= 15
lblAnnounce.Text = "Bien"
Case Is >= 12
lblAnnounce. Text = "Peut mieux faire"
Case Is >= 10
lblAnnounce. Text = "Médiocre"
Case Else
lblAnnounce. Text = "Mauvais"
End Select 134
135. Opérateurs et instructions de contrôle
Remarque
Les instructions Select Case ne conviennent pas à tous les types de
comparaisons.
Les opérateurs d’inclusion ou logiques ne sont pas supportés ; les
conditions Case ne peuvent donc pas être interrogées par And, Or,
ni Not.
Pour cela, la seule solution consiste à imbriquer des instructions
If... ElseIf... End If.
135
136. Opérateurs et instructions de contrôle
Comparaisons de valeurs séquentielles dans Select
Case
Select Case txtGrade.Text
Case 0 To 9
lblAnnounce. Text = "Mauvais"
Case 10 To 11
lblAnnounce. Text = "Médiocre"
Case 12 To 14
lblAnnounce. Text = "Peut mieux faire"
Case 15 To 17
lblAnnounce. Text = "Bien"
Case Else
lblAnnounce. Text = "Très bien" 136
137. Opérateurs et instructions de contrôle
Remarque d’or
On peut combiner les différents formats de Case à l’intérieur
d’une même instruction Select Case.
Voici un exemple :
Case 101, 102, 201 To 205, Is > 300
Si l’expression spécifiée dans Select Case renvoie une valeur
égale à 101, 102, 201, 202, 203, 204, 205, ou supérieure à 300, le
corps de Case s’exécute.
137
138. Opérateurs et instructions de contrôle
Les boucles Do
Test antérieur: Boucle Tant Que…Faire
Do While condition
Bloc d’instructions Visual Basic
Loop
Exemple
Dim Nom As String
Do While Nom <> "Fin"
Nom = InputBox ("saisir texte ou taper Fin")
If Nom<> "Fin" Then
Label1.Text=Nom
EndIf
Loop 138
139. Opérateurs et instructions de contrôle
Les boucles Do
Test antérieur: Boucle TantQue…Faire
La boucle Do est une instruction multiligne.
Comme l’instruction If, l’instruction Do supporte différents
formats .
139
140. Opérateurs et instructions de contrôle
Les boucles Do
Test antérieur: Boucle TantQue…Faire
Do While condition
Bloc d’instructions Visual Basic
Loop
Exemple:
Do While MotProposé <> MotDePasse
MotProposé = InputBox("Donnez votre mot de passe")
Loop
140
141. Opérateurs et instructions de contrôle
Les boucles Do
Test antérieur: Boucle TantQue…Faire
Do Until condition
Bloc d’instructions Visual Basic
Loop
Exemple:
Do Until MotProposé <> MotDePasse
MotProposé = InputBox("Donnez votre mot de passe")
Loop
141
142. Opérateurs et instructions de contrôle
Les boucles Do
Test postérieur: Boucle Faire…TantQue
Do
Bloc d’instructions Visual Basic
Loop While condition
Exemple:
Do
MotProposé = InputBox("Donnez votre mot de passe")
Loop While MotProposé <> MotDePasse
142
143. Opérateurs et instructions de contrôle
Les boucles Do
Test postérieur: Boucle Faire …TantQue
Do
Bloc d’instructions Visual Basic
Loop Until condition
Exemple:
Do
MotProposé = InputBox("Donnez votre mot de passe")
Loop Until MotProposé <> MotDePasse
143
144. Opérateurs et instructions de contrôle
Remarque
Vous devez, d’une manière ou d’une autre, modifier la condition
contenue dans le corps de la boucle ; autrement, la boucle
s’exécuterait indéfiniment.
Si d’aventure vous écrivez une boucle sans fin, votre application
se bloque jusqu’à ce que vous cliquiez sur le bouton Fin de
Visual Basic ou sur le bouton de fermeture de l’application.
Si rien, dans le corps de la boucle, ne permet de modifier la
condition testée, la boucle continuera de s’exécuter.
144
145. Opérateurs et instructions de contrôle
Les boucles For
For compteur = ValeurInitiale To ValeurTerminale [Step PasIncrementation]
Bloc d’instructions Visual Basic
Next [compteur]
145
146. Opérateurs et instructions de contrôle
Exemples
1) For i = 1 To 10
lblOut. Text = i
Next
2) For i = 10 To 100 Step 5
lblOut. Text = i
Next
3) For i = 1000 To 0 Step -100
lblOut. Text = i
Next
146
147. Opérateurs et instructions de contrôle
Exemples
For Out = 1 To 4
For In = 1 To 10
‘Ici, le bloc de code
Next In
Next Out
147
148. Opérateurs et instructions de contrôle
Les instrucitons Exit
Il arrive parfois, selon les données, qu’une procédure
(événementielle ou autre) doive être précipitamment
interrompue.
148
149. Opérateurs et instructions de contrôle
Les instrucitons Exit
Voici le format de l’instruction Exit :
Exit Sub/Function/Do/For
149
150. Opérateurs et instructions de contrôle
Les instrucitons Exit
Exemple: Exit for
For i=1 To 10
Nom = InputBox (" Votre nom ou Fin pour quitter")
if Nom = "Fin" Exit For
Label1.Text=Nom
Next i
150
151. Opérateurs et instructions de contrôle
Les instrucitons Exit
Exemple: Exit Sub
Private Sub cmdCalc()
If (txtSales.Text < 50000) Then
Exit Sub ’ Interrompt la procédure
Else
lblBonus. Text = txtSales.Text * .05
End If
End Sub
151
152. Support avancé du clavier et de
l’écran
Les fonctions internes
La fonction MsgBox()
MsgBox() est une fonction qui affiche une boîte de message.
Une boîte de message contient une icône, un message, et
au moins un bouton de commande.
Ce bouton de commande laisse à l’utilisateur le temps de
prendre connaissance du message ; lorsqu’il aura fini sa lecture,
il cliquera sur le bouton.
152
153. Support avancé du clavier et de
l’écran
Les fonctions internes
Exemple
153
154. Support avancé du clavier et de
l’écran
Les fonctions internes
La fonction MsgBox()
Voici le format de la fonction MsgBox() :
IntResponse = MsgBox(Prompt, intStyle, strTitle])
IntResponse: indique le type de l’entier renvoyé par la fonction.
strPrompt: c’est une chaîne (ou un contrôle qui contient une
chaîne) spécifiant le message qui s’affichera dans la boîte de
message.
intStyle: détermine le style des boutons.
strTitle: spécifie le libellé qui apparaîtra dans la barre de titre.
154
155. Support avancé du clavier et de
l’écran
Les fonctions internes
Exemple:
155
156. Support avancé du clavier et de
l’écran
Valeurs entières permettant de spécifier le style des
boutons
Chr(13): représentant des retours à la ligne 156
Valeur Constante nommée Description
0 vbOKOnly Bouton OK
1 vbOKCancel Boutons OK, Annuler
2 vbAbortRetryIgnore Boutons Abandonner, Réessayer, Ignorer
3 vbYesNoCancel Boutons Oui, Non, Annuler
4 vbYesNo Boutons Oui, Non
5 vbRetryCancel Boutons Réessayer, Annuler
157. Support avancé du clavier et de
l’écran
Exemples
intRéponse = MsgBox("Prêt pour l’impression ?", 1, "pjtFonctionInterne")
intRéponse = MsgBox("Prêt pour l’impression ?", vbOKCancel, "pjtFonctionInterne")
157
158. Support avancé du clavier et de
l’écran
Exemples
intRéponse = MsgBox("Prêt pour l’impression ?", 2, "pjtFonctionInterne")
158
159. Support avancé du clavier et de
l’écran
Exemples
intRéponse = MsgBox("Prêt pour l’impression ?", 3, "pjtFonctionInterne")
159
160. Support avancé du clavier et de
l’écran
Exemples
intRéponse = MsgBox("Prêt pour l’impression ?", 1, "pjtFonctionInterne")
If (intRéponse = 1) Then
’ Ici, le code chargé de gérer
’ le clic sur le bouton OK.
Else
’ Ici, le code chargé de gérer
’ le clic sur le bouton Annuler.
End If
160
161. Support avancé du clavier et de
l’écran
Les valeurs renvoyées indiquent quels boutons ont été
cliqués
Remarque: Echap = Annuler
161
Valeur Constante nommée Description
1 OK L’utilisateur a cliqué sur OK
2 Cancel L’utilisateur a cliqué sur Annuler
3 Abort L’utilisateur a cliqué sur Abandonner
4 Retry L’utilisateur a cliqué sur Réessayer
5 Ignore L’utilisateur a cliqué sur Ignorer
6 Yes L’utilisateur a cliqué sur Oui
7 No L’utilisateur a cliqué sur Non
162. Support avancé du clavier et de
l’écran
Les boutons par défaut
Le premier bouton d’une boîte de message est toujours le
bouton par défaut.
Visual Basic met automatiquement le focus sur le premier
bouton (le plus à gauche), et le déclenche dès que l’utilisateur
appuie sur Entrée.
162
163. Support avancé du clavier et de
l’écran
Les boutons par défaut
intRéponse = MsgBox("L’imprimante est-elle allumée",
vbYesNoCancel + vbDefaultButton1)
163
164. Support avancé du clavier et de
l’écran
Ces arguments permettent de spécifier le bouton par défaut
164
Valeur Constante nommée Description
0 vbDefaultButton1 Premier bouton par défaut
256 vbDefaultButton2 Deuxième bouton par défaut
512 vbDefaultButton3 Troisième bouton par défaut
165. Support avancé du clavier et de
l’écran
Les icônes
Valeurs spécifiant l’icône de la boîte de message
165
Valeur Constante nommée Description Icône
16 vbCritical Erreur critique
32 vbQuestion Question
48 vbExclamation Avertissement
64 vbInformation Information
166. Support avancé du clavier et de
l’écran
Exemple en utilisant les icônes
intRéponse = MsgBox("L’imprimante est-elle allumée ?",
vbYesNoCancel + vbQuestion + vbDefaultButton2, "Une petite
question")
166
167. Support avancé du clavier et de
l’écran
La fonction InputBox()
La fonction InputBox() affiche une boîte de message qui permet à
l’utilisateur de répondre "dans le texte ".
Cette combinaison d’une boîte de message et d’une sorte de zone de
texte est appelée boîte d’entrée.
167
168. Support avancé du clavier et de
l’écran
La fonction InputBox()
Seuls les boutons OK et Annuler apparaissent dans une boîte
d’entrée.
Les boîtes d’entrée n’affichent pas non plus d’icône,
contrairement aux boîtes de message.
168
169. Support avancé du clavier et de
l’écran
La fonction InputBox()
Voici le format de la fonction InputBox() :
strRéponse = InputBox(Prompt, Titre, texteParDefaut, Xposition,Yposition)
InputBox() renvoie une valeur de type chaîne. La chaîne
renvoyée est la réponse saisie par l’utilisateur dans le champ.
Prompt: Le message ou la question qui s’affiche dans la boîte
d’entrée. La longueur maximale de Prompt est de 1024 caractères.
169
170. Support avancé du clavier et de
l’écran
La fonction InputBox()
Voici le format de la fonction InputBox() :
strRéponse = InputBox(Prompt, Titre, texteParDefaut, Xposition,Yposition)
Titre: Le texte qui apparaît dans la barre de titre. A défaut de titre,
Visual Basic affiche le nom du projet.
texteParDefaut: Contenu par défaut du champ de saisie. L’utilisateur
peut accepter cette réponse par défaut, qui sera alors la valeur
renvoyée ; il peut la modifier, ou saisir une réponse entièrement
nouvelle. On se sert d’une valeur par défaut lorsque la réponse est
prévisible et n’attend que d’être validée par le bouton OK.
170
171. Support avancé du clavier et de
l’écran
La fonction InputBox()
Voici le format de la fonction InputBox() :
strRéponse = InputBox(Prompt, Titre, texteParDefaut, Xposition,Yposition)
Xposition, Yposition: Coordonnées en twips de la boîte d’entrée. Il est
préférable, quand la question posée renvoie à d’autres feuilles ou boîtes
de dialogue déjà à l’écran, de ne pas afficher la boîte d’entrée par-dessus.
Si vous ne spécifiez pas de coordonnées, Visual Basic affiche par défaut la
boîte d’entrée au centre de l’écran.
Remarque: twips = 1/567 de centimètre
171
172. Support avancé du clavier et de
l’écran
Exemple de la fonction InputBox()
strRéponse = InputBox("Quel est le nom du client ? ","Identité client")
172
173. Support avancé du clavier et de
l’écran
Exemple de la fonction InputBox()
strRéponse = InputBox("Quel est le nom du client ?", "Identité client",
"Joumana Souiri", 500, 750)
173
174. Support avancé du clavier et de
l’écran
Exemple de la fonction InputBox()
strRéponse = InputBox("Quel est le nom du client ?", "Identité
client", "Joumana Souiri", 500, 750)
If (strRéponse <> "") Then
’ Code chargé de gérer l’entrée utilisateur
Else
’ Code chargé de gérer le clic sur Annuler
End If
Remarque: Empty=""
174
175. Support avancé du clavier et de
l’écran
Les cases à cocher
Définition
Une case à cocher (check box, en anglais) est une option
proposée sur la feuille.
La case est cochée lorsque l’option est sélectionnée, décochée
lorsque l’option est désélectionnée.
Les cases à cocher offrent à l’utilisateur le choix entre deux
valeurs possibles : True/False, Enabled/Disabled, etc.
175
176. Support avancé du clavier et de
l’écran
Les cases à cocher
Remarque
Une case à cocher est soit cochée, soit décochée.
Checked est la propriété du contrôle Check-Box qui
détermine
l’état de la case.
Si la propriété Checked vaut True, l’option est sélectionnée et
la case est cochée.
Si Checked vaut False, l’option est désélectionnée et la case
décochée.
176
177. Support avancé du clavier et de
l’écran
Les cases à cocher
L’état d’une case à cocher peut être interrogé par une
instruction If du format suivant :
If (chkUnder.Checked = true) Then
’ Code chargé de gérer l’état "coché"
Else
’ Code chargé de gérer l’état "décoché"
End If
177
179. Support avancé du clavier et de
l’écran
Exemple 1:
Police de caractères (ou Font)
Une 'Font' est définie par:
- Un nom.
- Une taille.
- Un style (gras, italique, souligné..)
179
180. Support avancé du clavier et de
l’écran
Exemple 1:
Police de caractères (ou Font)
-Pour modifier la police de caractère utilisée dans un contrôle, il
faut lui assigner un objet 'Font‘:
label1.Font = New System.Drawing.Font("Arial", 10)
-On indique le nom de la font et la taille, on aurait pu ajouter un
troisième argument: le style (gras, italique, souligné):
label1.Font = New System.Drawing.Font("Arial", 10, FontStyle.Bold )
180
181. Support avancé du clavier et de
l’écran
Les boutons d’option
Les boutons d’option donnent à l’utilisateur la possibilité de
choisir parmi plusieurs options.
A l’inverse des cases à cocher, en revanche, un seul bouton
d’option peut être sélectionné à la fois.
Les boutons d’option offrent un choix unique parmi plusieurs
options.
N.B: la propriété pour voir quel bouton radio est coché est la
même
qu’une case à cocher.
181
186. Gestion de la souris et contrôles avancés
Les contrôles ListBox
Voici les différents types de zones de liste :
zone de liste simple ;
ComboBox liste déroulante ;
ComboBox simple ;
ComboBox déroulante.
186
187. Gestion de la souris et contrôles avancés
Les zones de liste simples
Le contrôle zone de liste simple permet à l’utilisateur de
sélectionner un ou plusieurs éléments dans une liste
prédéfinie.
Pour ajouter une zone de liste simple à votre feuille,
double-cliquez sur le contrôle ListBox de la Boîte à outils.
187
188. Gestion de la souris et contrôles avancés
Les zones de liste simples
Quelques propriétés:
Name: nom de la liste.
SelectMode: indique le nombre d'éléments qu'on peut
sélectionner et le mode de sélection.
None: aucune sélection n'est possible.
One: sélection d'un seul élément (valeur par défaut)
MultiSimple: sélection de plusieurs éléments par un simple clic.
MultiExtended: sélection de plusieurs éléments avec un clic en
appuyant sur la touche Shift (ou Ctrl).
188
189. Gestion de la souris et contrôles avancés
Les zones de liste simples
Quelques propriétés:
Items: une collection (possède des propriétés et des méthodes) qui permet
d'accéder aux éléments de la liste.
SelectedItem: l'élément sélectionné dans la liste (si SelectionMode=
One)
SelectedIndex: indice de l'élément sélectionné (= -1 si aucun
élément n'est sélectionné)
SelectedItems: une collection représentant les éléments sélectionnés
dans la liste (si SelectionMode=MultiSimple ou MultiExtended)
SelectedIndices: une collection représentant les indices des
éléments sélectionnés.
Sorted: indique si la liste est triée (True) ou non (False)
189
190. Gestion de la souris et contrôles avancés
Les zones de liste simples
Initialisation du contrôle listbox
Dans la fenêtre Propriétés, cliquez sur la propriété Items d’un
contrôle ListBox : une liste s’affiche, dans laquelle vous pouvez
ajouter des valeurs.
190
191. Gestion de la souris et contrôles avancés
Les zones de liste simples
Initialisation du contrôle listbox
Méthode assistée
Lors du clic sur la liste simple, elle apparaît sélectionnée et une petite
flèche apparaît en haut à droite de cette sélection, comme à la figure
suivante.
Cliquez maintenant sur Modifier les éléments pour lui en attribuer.
191
192. Gestion de la souris et contrôles avancés
Les zones de liste simples
Pour ajouter des éléments à une liste, on se sert de la méthode
Items.Add.
192
193. Gestion de la souris et contrôles avancés
Les zones de liste simples
Private Sub Form_Load()
’ Initialise les valeurs du contrôle.
lstCouleurs.Items. Add "Rouge"
lstCouleurs.Items. Add "Bleu"
lstCouleurs.Items. Add "Vert"
lstCouleurs.Items. Add "Jaune "
lstCouleurs.Items. Add "Orange"
lstCouleurs.Items. Add "Blanc"
End Sub
193
194. Gestion de la souris et contrôles avancés
Les zones de liste simples
Pour ajouter la couleur Aqua à la liste:
lstCouleurs.Items.Add "Aqua"
Pour Ajouter '4' :
lstCouleurs.Items.Add(4.Tostring)
Pour insérer ‘Kiwi’ en 4ème position :
lstCouleurs.Items.Insert(4, "Kiwi")
Pour ajouter plusieurs éléments en une seule fois on utilise
Items.AddRange:
Dim tabPays() As String {"Maroc", "Tunisie", "Lybie" }
Me.ListBox1.Items.AddRange(tabPays)
194
195. Gestion de la souris et contrôles avancés
Les zones de liste simples
Pour trier les éléments de liste simples, on utilise la proprieté
Sorted
lstCouleurs.Sorted=True
195
196. Gestion de la souris et contrôles avancés
Les zones de liste simples
Remarque importante:
L’élément sélectionné est mis en surbrillance et sa valeur est stockée
dans lstCouleurs.text (également dans lstCouleurs.SelectedItem )
196
197. Gestion de la souris et contrôles avancés
Les zones de liste simples
Exemple:
197
198. Gestion de la souris et contrôles avancés
Les zones de liste simples
Le code:
Private Sub lstCouleurs_Click()
‘Copie l’élément sélectionné dans la zone de texte.
txtCouleurs.Text = lstCouleurs.SelectedItem
End Sub
198
199. Gestion de la souris et contrôles avancés
Les zones de liste simples
Chaque élément de la zone de liste se voit affecter une valeur
index,
pour être distingué des autres.
L’index commence à 0 pour le premier élément, et ainsi de suite.
La méthode IndexOf de la zone de liste permet de déterminer la
valeur d’index de l’élément.
L’index de l’élément sélectionné est stock é dans SelectedIndex.
199
200. Gestion de la souris et contrôles avancés
Les zones de liste simples
Pour accéder à un élément de la zone de liste:
lstCouleurs.Items(3).ToString
200
201. Gestion de la souris et contrôles avancés
Les zones de liste simples
Pour retirer le troisième élément de la liste, voici ce que
serait
le code :
lstCouleurs.Items.RemoveAt(2)
Pour retirer l’élément sélectionné de la liste:
lstCouleurs.Items.Remove(lstCouleurs.SelectedItem)
Pour retirer l'élément "Blanc":
201
202. Gestion de la souris et contrôles avancés
Les zones de liste simples
Pour vider la liste:
lstCouleurs.Items.Clear()
202
203. Gestion de la souris et contrôles avancés
Les zones de liste simples
1) Supprime les cinq éléments de la liste:
For I = 0 To 4
lstCouleurs. Items.RemoveAt(I)
Next I
2) Supprime tous les éléments de la liste:
intTotal = lstCouleurs.Items.Count ‘Stocke le nombre total des éléments de la liste.
For I = 1 To intTotal
lstCouleurs. Items.RemoveAt(0)
Next I
203
204. Gestion de la souris et contrôles avancés
Les contrôles ComboBox
Combinaison d'une liste simple et une zone de texte.
On peut sélectionner une seule valeur de la liste ou saisir une
dans la zone de texte.
Exemple
204
Zone de texte
Bouton pour
dérouler la liste
205. Gestion de la souris et contrôles avancés
Les contrôles ComboBox
Quelques propriétés:
Name: nom de la liste.
DropDownStyle: indique l'apparence et le mode d'utilisation de la
liste:
Simple: possibilité de saisie et tous les éléments de la liste sont visibles.
DropDown: possibilité de saisie et seul l'élément sélectionné sera visible
(valeur par défaut)
DropDownList: pas de possibilité de saisie, on ne peut que
sélectionner un élément de la liste.
205
206. Gestion de la souris et contrôles avancés
Les contrôles ComboBox
Le contrôle ComboBox est disponible en trois types:
ComboBox liste déroulante ;
ComboBox simple (fonctionne comme une combinaison de zone de liste
et de zone de texte.);
ComboBox déroulante.
206
207. Gestion de la souris et contrôles avancés
Les contrôles ComboBox
Les ComboBox liste déroulante supportent les mêmes méthodes
et les mêmes propriétés que les zones de liste.
207
208. Gestion de la souris et contrôles avancés
Le contrôle Timer
Le contrôle Timer vous permet de générer des réponses sur la
base
des valeurs envoyées par l’horloge interne du PC.
le code peut s’exécuter sur la base d’intervalles de temps,
indépendamment de la vitesse du PC, parce que le temps est une
constante.
208
209. Gestion de la souris et contrôles avancés
Le contrôle Timer
Le contrôle Timer reçoit les événements timer et y répond en
fonction des propriétés que vous avez définies.
Lorsque vous disposez le contrôle Timer sur la feuille, vous
déterminez la fréquence des événements timer.
209
210. Gestion de la souris et contrôles avancés
Le contrôle Timer
Cet intervalle correspond à l’une des propriétés du contrôle Timer.
Lorsque ce laps de temps s’est écoulé, le contrôle Timer déclenche
la procédure événementielle appropriée.
210
211. Gestion de la souris et contrôles avancés
Le contrôle Timer
Remarque:
Le contrôle Timer ne peut être dimensionné, et n’apparaît pas sur
la feuille lors de l’exécution.
211
212. Gestion de la souris et contrôles avancés
Le contrôle Timer
La seule propriété réellement spécifique au contrôle Timer est Interval.
La propriété Interval spécifie la fréquence à laquelle le contrôle répondra
aux événements.
Cet intervalle en millisecondes peut être défini lors de la création ou
lors de l’exécution.
212
213. Gestion de la souris et contrôles avancés
Le contrôle Timer
Exemple:
vous affectez à la propriété Interval la valeur 1000, les événements
timer se produiront toutes les 1 000 millisecondes, soit une fois par
seconde environ.
N.B: le contrôle Timer connaît quelques limites.
La propriété Interval ne peut contenir que des valeurs situées
entre 0 et 64,767.
L’intervalle maximal sera donc de 65 secondes, pas plus.
213
214. Gestion de la souris et contrôles avancés
Le contrôle Timer
Exemple:
214
215. Gestion de la souris et contrôles avancés
Le contrôle Timer
Propriétés:
Timer 1: Text1(resp. 2):
Interval: 1000 Name: txtTime1(resp. 2)
Name: tmrTimer1 Text = 1
Timer 2: Police = 18
Interval: 500 Alignement= Center
Name: tmrTimer2 Width = 1000
215
216. Gestion de la souris et contrôles avancés
Le contrôle Timer
Le code pour tmrTimer1:
Private Sub tmrTimer1_Tick()
’ Ajoute 1 à la valeur affichée.
txtTimer1.Text = txtTimer1.Text + 1
End Sub
216
217. Gestion de la souris et contrôles avancés
Le contrôle Timer
Le code pour tmrTimer1:
Private Sub tmrTimer2_Tick()
’ Ajoute 1 à la valeur affichée.
txtTimer2.Text = txtTimer2.Text + 1
End Sub
217
218. Gestion de la souris et contrôles avancés
Le contrôle Timer
Lebels pour chaque Timer:
Lent pour Timer1
Rapide pour Timer2
218
219. Gestion de la souris et contrôles avancés
Le contrôle Timer
Résultat:
219
220. Application multi-feuilles
• Une application contient généralement plusieurs feuilles dont une
est feuille de démarrage.
• Le raccourci permet d'ajouter une feuille.
Dans la fenêtre qui sera affichée, cliquer sur le bouton Ajouter
(Add)
• Dans le menu principal, utiliser Project/ NomApplication
Properties pour choisir la feuille de démarrage en utilisant la liste
Startup Form
220
Nouvelle feuille
221. Application Multi-feuilles
• Afficher une deuxième feuille à partir d'une première
o NomFeuille.Show( )
On peut utiliser les deux feuilles
o NomFeuille.ShowDialog( )
On ne peut pas utiliser que la deuxième feuille (feuille modale). Pour
revenir à la première, on doit fermer la deuxième.
Exemple: - Form1 et Form2 deux feuilles
- Cmd1 un bouton de commande sur Form1.
Objectif: Clic sur Cmd1 Afficher Form2
221
222. Application Multi-feuilles
Private Sub cmd1_Click(…..) Handles cmd1.Click
Form2.Show() ' on peut accéder aux deux feuilles Form1 et Form2
End Sub
Ou
Private Sub cmd1_Click(…..) Handles cmd1.Click
Form2.ShowDialog() ' on ne peut pas accéder à Form1 tant que Form2 est
End Sub ' affichée
222
Name= Form1
Name= Form2
Name= Cmd1
224. Les Menus
• Dans les applications multi-feuilles, on utilise généralement
des menus et des feuilles MDI.
Exemple: Dans ce projet par exemple, on a trois feuilles
On va créer un menu dans Form3 pour accéder aux feuilles
Form1 et Form2.
o Ouvrir Form3 en mode conception (Design)
o Mettre sa propriété Text à "Accueil" et IsMdiContainer à
True. Cela signifie que les deux autres feuilles vont s'afficher
à l'intérieur de Form3.
224
225. Les Menus
o Utiliser le contrôle pour créer graphiquement un
menu dans Form3
o Cliquer sur le cadre du menu pour avoir une zone de texte
pour la première option du menu
o Saisir &Gestion dans cette zone de texte
o Saisir &Informations et &Aide dans les deux autres zones
de texte.
225
Cadre du menu
Zone de texte
226. Les Menus
o Chaque option du menu a des propriétés qu'on peut modifier
o Cliquer sur la première option Gestion pour avoir ses
propriétés
o Mettre la propriété Name à OptionGestion
o Mettre la propriété ToolTipText à "Charger Form1 ou Form2".
C'est le texte qui s'affichera dans une info-bulle lorsqu'on
passera le pointeur de la souris sur l'option pendant
l'exécution.
226
Name de l'option
Text de l'option
227. Les Menus
o Cliquer sur l'option Gestion pour avoir une zone de texte
afin de créer une sous-option.
o Saisir dans cette zone de texte "Première Feuille"
o Saisir dans la deuxième zone de texte "Deuxième Feuille"
227
228. Les Menus
o Cliquer sur la sous-option Première Feuille afin de modifier
ses propriétés:
o Name = SOptionFeuille1 (nom de la sous-option)
o Shortcutkeys = Ctrl + F1 ( raccourci de la sous-option)
o Image = une image de votre choix (icône de la sous-option)
o Faire de même pour la sous-option Deuxième Feuille:
o Name = SOptionFeuille2
o Shortcutkeys = Ctrl + F2
o Image = une image de votre choix
228
229. Les Menus
o Ajouter la sous-option Quitter:
o Modifier le code de l'événement Load de la feuille Form1
Private Sub Form1_Load(…) Handles Me.Load
Me.MdiParent = Form3 ' La feuille From1 s'affichera à l'intérieur de
Form3
End Sub
o Faire de même pour l'événement Load de la feuille form2
229
Name = SOptionQuitter
230. Les Menus
o Dans Form3, faire un double-clic sur la sous-option
"Première Feuille" pour avoir son événement Click:
Private Sub SOptionFeuille1_Click(…..) Handles SOptionFeuille1.Click
Form1.Show()
End Sub
o Faire de même pour l'événement Click de la sous-option
"Deuxième Feuille":
Private Sub SOptionFeuille2_Click(…..) Handles SOptionFeuille2.Click
Form2.Show()
End Sub
o Choisir Form3 comme feuille de démarrage.
o Exécuter votre projet et cliquez sur les deux sous-options.
o Essayer ShowDialog au lieu de Show et exécuter votre
projet.
230
231. Les Menus
o Dans Form3, faire un double-clic sur la sous-option Quitter
pour avoir son événement Click:
Private Sub SOptionQuitter_Click(…..) Handles
SOptionQuitter.Click
End 'fin de l'application
End Sub
o Exécuter votre projet et cliquez sur la sous-option Quitter.
231
232. Gestion de la souris et contrôles avancés
Déclaration des tableaux
Public NomDuTableu(Dimensions) As TypeDonnées
Ou
Dim NomDuTableau(Dimensions) As TypeDonnées
Ou
Dim NomDuTableau(PremierIndice To DernierIndice) As TypeDonnées
Cette instruction déclare un tableau NomDuTableau de taille
Dimension+1.
Remarque: Par défaut, le premier indice est 0.
232
233. Gestion de la souris et contrôles avancés
Déclaration des tableaux
Exemples:
Dim intTab(5) As Integer 'Tableau de 6 entiers
Dim intCounts(1 To 5) As integer 'Tableau de 5 entiers
Dim Employes (9) As String 'Tableau de 10 chaînes de caractères
Public strCustName(200 To 999) As String
Dim Mat(10, 10) As Single 'Matrice de 10 lignes et 10 colonnes
Dim T(0 to 19) As Integer 'Tableau de 20 entiers
Dim Matrice(4,3) As Integer 'Matrice de 5 lignes et 3 colonnes
233
234. Gestion de la souris et contrôles avancés
Déclaration des tableaux
Initialisation d‘un tableau:
1)
Dim intTab(5) As Integer ‘Déclaration du tableau
intTab(0)=5
intTab(1)=10
intTab(2)=15
intTab(3)=20
intTab(4)=25
intTab(5)=30
234
235. Gestion de la souris et contrôles avancés
Déclaration des tableaux
Initialisation d‘un tableau:
2)
Dim Employes () As String = {"Marrakchi", "Souiri", "Soussi"}
Remarque : La taille 3 du tableau est déduite
235
236. Gestion de la souris et contrôles avancés
Déclaration des tableaux
Accéder aux éléments d’un tableau
Employes (5) ‘l’élément d'indice 5 dans le tableau
Matrice(0,2) ‘la cellule à la 1ère ligne et 2nd colonne de la m
236
237. Gestion de la souris et contrôles avancés
Manipulation des tableaux
Redimensionner un tableau
La taille d'un tableau peut être redimensionnée au cours d'une application
Redim intTab(30)
Redim Preserve intTab(30)
Remarque
Le redimensionnement du tableau ⇒ la perte des données existantes.
Pour pouvoir conserver le contenu d'un tableau lors d'un redimensionnement,
il faut spécifier le mot-clé Preserve après Redim.
237
238. Gestion de la souris et contrôles avancés
Manipulation des tableaux
Vider un tableau
Array.Clear(nomDuTableau, premierIndice, nombreDeCasesAVider)
nombreDeCasesAVider : le nombre de cases à vider
Exemple
Array.Clear(intTab, 0, 5)
238
239. Gestion de la souris et contrôles avancés
Manipulation des tableaux
Inverser le sens du tableau
Array.Reverse(nomDuTableau)
Exemple
Dim Tab() As Integer={1,2,3,4}
Array.Reverse(Tab) ‘le tableau Tab contient maintenant 4,3,2,1
239
240. Gestion de la souris et contrôles avancés
Manipulation des tableaux
Copier un tableau dans un autre: Copy
Pour copier un tableau dans un autre tableau, on utilise la fonction Copy
Array.Copy(tableauDuSource, tableauDuDestination, nbreElement)
nbreElement: le nombre d’éléments à copier depuis l'élément 0.
Exemple
Array.Copy(tab1, tab2, 7)
Array.Copy(tab1, tab2, 7)
240
241. Gestion de la souris et contrôles avancés
Manipulation des tableaux
Trier un tableau: Sort
Pour trier les elements d’un tableau, on utilise la fonction Sort
Array.sort(tab) ‘Trie le tableau tab
241
242. Gestion de la souris et contrôles avancés
Manipulation des tableaux
La méthode IndexOf
Recherche un objet spécifié dans un tableau unidimensionnel (trié ou non)
retourne l'index de la première occurrence.
Exemple
Dim myIndex As Integer = Array.IndexOf(myArray, myString)
Remarque
Retourne -1 si l'élément n'est pas trouvé.
LastIndexOf fait une recherche à partir de la fin.
242
243. Gestion de la souris et contrôles avancés
Manipulation des tableaux
Fonctions Ubound et Lbound
Ubound :
Retourne le plus grand indice disponible pour la dimension indiquée d'un tableau
Lbound : retourne la limite inférieure ( = 0 )
Exemple:
A = Ubound (NomTableau)
243
244. Gestion de la souris et contrôles avancés
Manipulation des tableaux
Tableaux dynamiques
La taille du tableau est définie au moment de l’exécution avec Redim
Exemple:
Dim Temperature () As Single
Dim Jours As Short
Jours = InputBox ("Combien de jours? ")
Redim Temperature (Jours-1)
244
245. Gestion de la souris et contrôles avancés
Manipulation des tableaux
La fonction Length
Length retourne un entier qui représente le nombre d'éléments total
dans le tableau.
Pour un tableau à une dimension Length-1 retourne l'indice du dernie
élément.
Exemple:
Tab.Length
245
246. Fonctions de chaînes
La fonction Len()
Voici le format de Len() :
Len(Expression)
Len() renvoie (retourne) la longueur en nombre de caractères
de la variable chaîne, de la constante chaîne ou de l’expression
chaîne située entre les parenthèses.
Exemples:
La fonction MsgBox() affiche le résultat 6 :
intMsg = MsgBox(Len("abcdef"))
246
247. Fonctions de chaînes
Fonctions de conversion de chaînes
Remarque:
CStr() et Str() convertissent leurs arguments en chaînes.
La différence est que Str() fait précéder d’un blanc (espace) les
nombres positifs convertis en chaîne. 247
Fonction Description
CStr() Convertit l’argument en chaîne.
Str() Convertit un argument numérique en chaîne
(plus précisément en Variant exploitable comme chaîne).
Val() Convertit un argument chaîne en nombre
(si la chaîne passée contient bien un nombre).
248. Fonctions de chaînes
Fonctions de sous-chaînes
Les fonctions de sous-chaînes renvoient une partie de la
chaîne. Right() renvoie les caractères à partir de la droite,
Left()
à partir de la gauche. Mid() prélève les caractères à partir du
milieu de la chaîne.
Voici le format des fonctions de sous-chaînes :
Left(chaineDeCaracteres, valeurNumerique)
Right(chaineDeCaracteres, valeurNumerique)
Mid(chaineDeCaracteres, startPosition[, length]) 248
249. Fonctions de chaînes
Fonctions de sous-chaînes
Exemples:
Le code suivant illustre le comportement de Left() :
strA = "abcdefg"
partSt1 = Left(strA, 1) ’ Renvoie (Retourne) "a".
partSt2 = Left(strA, 3) ’ Renvoie "abc".
partSt3 = Left(strA, 20) ’ Renvoie "abcdefg".
249
250. Fonctions de chaînes
Fonctions de sous-chaînes
Exemples:
Right() fait la même chose en sens inverse :
strA = "abcdefg"
partSt1 = Right(strA, 1) ’ Renvoie "g".
partSt2 = Right(strA, 3) ’ Renvoie "efg".
partSt3 = Right(strA, 20) ’ Renvoie "abcdefg".
250
251. Fonctions de chaînes
Fonctions de sous-chaînes
Exemples:
Mid() peut prélever n’importe quel nombre de caractères
depuis n’importe quel point de la chaîne. Voici un exemple :
strA = "Visual Basic FORTRAN COBOL C Pascal«
lang1 = Mid(strA, 1, 12) ’ Renvoie "Visual Basic".
lang2 = Mid(strA, 14, 7) ’ Renvoie "FORTRAN".
lang3 = Mid(strA, 22, 5) ’ Renvoie "COBOL".
lang4 = Mid(strA, 28, 1) ’ Renvoie "C".
lang5 = Mid(strA, 30, 6) ’ Renvoie "Pascal".
251
252. Fonctions de chaînes
Fonctions UCase() et LCase()
Exemples:
UCase() renvoie l’argument chaîne en lettres capitales.
LCase() le renvoie en lettres minuscules.
La fonction MsgBox() suivante affiche VISUAL BASIC :
intMsg = MsgBox(UCase("Visual Basic"))
252
253. Fonctions de chaînes
Les fonctions LTrim() et RTrim()
LTrim() et RTrim() suppriment les espaces au début et à la fin
de la chaîne.
LTrim() renvoie l’argument chaîne sans les espaces de début,
RTrim() sans les espaces de fin. La fonction Trim() supprime
les espaces de début et de fin.
Voici le format de ces fonctions :
LTrim(stringExpression)
RTrim(stringExpression)
Trim(stringExpression) 253
254. Fonctions de chaînes
Les fonctions LTrim() et RTrim()
Exemples:
Les instructions suivantes suppriment les espaces de début, de
fin, et des deux :
st1 = LTrim(" Bonjour") ’ Renvoie "Bonjour".
st2 = RTrim("Bonjour ") ’ Renvoie "Bonjour".
st3 = Trim(" Bonjour ") ’ Renvoie "Bonjour".
254
255. Fonctions de chaînes
La fonction ReverseIt()
La fonction ReverseIt() suivante inclut plusieurs des
fonctions
de chaînes présentées ci-dessus. Cette fonction inverse un
certain nombre de caractères dans la chaîne passée.
Exemples:
Supposons que la fonction ReverseIt() soit appelée par
l’instruction suivante :
newStr = ReverseIt ("Visual Basic", 6)
Si tout se passe bien, la chaîne newStr prendra comme
contenu 255
257. Procédures et fonctions
Fonctions internes
Méthodes de la classe Math
Utiliser l’instruction : Imports System.Math
257
Abs(n) Renvoie la valeur absolue de n
Atan(n) Renvoie l’arc tangente de n en radians
Cos(n) Cosinus de n en radians
Exp(n) Constante e élevée à la puissance n
Sign(n) -1 si n négatif / +1 si n positif
Sin(n) Sinus de n en radians
Sqrt(n) Racine carrée de n
Tan(n) Tangente de n en radians
258. Procédures et fonctions
Fonctions internes
Fonctions de type de données
IsDate(): vérifie si son argument est de type Date
(ou s’il peut être correctement converti en
date).
IsEmpty(): vérifie si son argument a été initialisé.
IsNull(): vérifie si son argument contient une valeur
Null.
IsNumeric(): vérifie si son argument est d’un type
numérique (ou s’il peut être correctement converti en
nombre). 258
259. Procédures et fonctions
Fonctions internes
La fonction abrégée IIf():
Syntaxe:
IIf(condition, TrueBody, FalseBody)
N.B: IIf() ne doit être utilisé qu’en remplacement d’instructions
If... Else courtes.
259
260. Procédures et fonctions
Fonctions internes
La fonction abrégée IIf():
Exemple 1:
If (curSales < 5000.00) Then
curBonus = 0.00
Else
curBonus = 75.00
End If
équivalent à
curBonus = IIf(curSales < 5000.00, 0.00, 75.00)
260
261. Procédures et fonctions
Fonctions internes
La fonction abrégée IIf():
Exemple 2:
Dim Note As Single
Dim Reponse As String
Note = InputBox (" Tapez votre note ")
Reponse = IIf (Note >= 10, " Admis ", " Ajourné ")
MsgBox (Réponse)
261
262. Procédures et fonctions
Procédures privées et publiques
1) Private Sub ReportIt()
2) Public Sub ReportIt()
Remarque:
Une procédure déclarée comme Private n’est exploitable
qu’à l’intérieur de son propre module.
Une procédure déclarée comme Public peut être appelée
depuis n’importe quelle autre procédure de l’application.
262
263. Procédures et fonctions
Procédures privées et publiques
1) Private Sub ReportIt()
2) Public Sub ReportIt()
Remarque:
Une procédure déclarée comme Private n’est exploitable
qu’à l’intérieur de son propre module.
Une procédure déclarée comme Public peut être appelée
depuis n’importe quelle autre procédure de l’application.
263
264. Procédures et fonctions
Comment déclarer une fonction
Syntaxe :
Public|Private Function nomDeLaFonction(Arg) As typeDeRetour
Exemple:
Public Function SalesTax(curTotal As Currency, sngRateDisc As Single) As Currenc
264
265. La syntaxe pour déclarer une fonction
Appel de la fonction TotalImpot
Dim PrixTotal, PrixVente As Single
PrixVente = 500
PrixTotal = PrixVente + TotalImpot (PrixVente)
265
Function NomFonction ([arguments]) As Type
Liste d’instructions
NomFonction = Expression
End Function
__________________________________
Type : Type de la valeur retournée
Possibilité d’utiliser l’instruction Return
Function TotalImpot(ByVal Prix as Single) As Single
Dim ImpotNational, ImpotLocal As Single
ImpotNational = Prix*0,05
ImpotLocal = Prix*0,015
TotalImpot = ImpotNational+ImpotLocal
‘ ou Return ImpotNationale+ImpotLocal
End Function
Procédures et fonctions
266. Procédure Sub
Appel d’une procédure Sub
VoeuAnniversaire ("Lina")
266
Sub NomProcédure ([arguments])
Instructions
End Sub
Sub VoeuAnniversaire (ByVal Personne As String)
Dim Msg As String
If Personne <> " " Then
Msg = " Joyeux anniversaire" & Personne & "!"
Else
Msg = "Nom non spécifié"
EndIf
MsgBox = (Msg, , "Meilleurs voeux")
End Sub
Procédures et fonctions
267. Dans une procédure/fonction, les arguments sont passés soit par
valeur, soit par référence
Arguments passés par valeur (par défaut) : Mot clé ByVal
Tout changement apporté à une variable passée par valeur n’est pas
renvoyé à la procédure/fonction appelante.
Arguments passés par référence : Mot clé ByRef
Tout changement apporté à une variable passée par référence est
renvoyé à la procédure/fonction appelante
Exemple
Sub CoutPlusInteret (ByVal Cout As Single, ByRef Total As Single)
Cout = Cout * 1,05
Total = Int (Cout) ‘Arrondit à l’entier
End Sub
267
Procédures et fonctions
268. Modules et Procédures
Modules
Un module est un fichier destiné à comporter du
code utile à la conception du programme.
Il comporte les déclarations de variables et de
procédures/fonctions afin d’étendre leur portée sur tout
le projet.
Par défaut, les fonctions déclarées dans un module
sont publiques.
Création d’un module
Accessible depuis le Menu Projet (Ajouter un
nouvel élément)
268
269. Références
1. Visual Basic 6. Créez des applications efficaces en VB6, Greg Perry,
Pearson Education France, 2009 .
2. https
://openclassrooms.com/fr/courses/993975-apprenez-a-programmer-e
3. https://vb.developpez.com/cours/
269