Vous êtes sur la page 1sur 74

République Démocratique du Congo

ENSEIGNEMENT SUPERIEUR ET UNIVERSITAIRE


INSTITUT SUPERIEUR DE TECHNIQUES APPLIQUEES

« I.S.T.A »
KINSHASA/BARUMBU

NOTES DE COURS DE
PROGRAMMATION SCIENTIFIQUE
A l’usage des étudiants de LMD/L2 électricité


Jacques NYEMBO BIYULE
Professeur docteur ingénieur

Année académique : 2020-2021


[1]

AVANT-PROPOS

Ce syllabus est un cours de programmation scientifique. Il couvre


deux principaux paradigmes de programmation : la programmation déclarative
et la programmation orientée objet, dans un cadre technico pratique de
développement de programmes. Il propose une sémantique simple et complète
permettant de comprendre tous les concepts techniques et modèles pour réaliser
des programmes opérationnels dans le milieu professionnel.

C’est un cours de programmation qui présuppose que les étudiants


ont déjà suivi un premier cours d’introduction à la programmation, par exemple
avec VB.

Cet ouvrage est dédié à l’apprentissage de la programmation


orienté objet en langage VB.NET, ce qui recouvre deux éléments
fondamentaux. Le premier est l’apprentissage du langage en lui-même, c’est-à-
dire les instructions, les vocabulaires et les règles qui correctement utilisés
permettent d’écrire des programmes à votre ordinateur. Le second élément
important c’est l’apprentissage de la programmation en langage VB NET
pour le développement de logiciels adaptatifs.

Le langage VB NET est un langage de programmation, c’est-à-dire


qu’il vous permet de créer des logiciels, ou programmes, exécutés par votre
ordinateur. Il s’agit d’un langage très répandu et réputé pour sa puissance et sa
flexibilité.

Un chapitre est consacré à la notion sur le système de gestion de


bases de données pour permettre d’évoluer vers le développement d’applications
client-serveur.

Ce cours est adressé aux étudiants-ingénieurs de deuxième génie


électrotechnique de l’ISTA et aux étudiants d’autres universités intéressés par la
programmation scientifique.
[2]

CHAPITRE I. NOTION DE BASE EN ALGORITHMIQUE


1.1. CONCEPTS FONDAMENTAUX EN INFORMATIQUE
Les concepts fondamentaux en informatique sont constitués :
 De l’algorithme ;
 Du programme.
1.1.1. Algorithme
Etymologiquement, le mot Algorithme dérive du nom du
mathématicien Al_Khwarizmi qui a vécu au 9ème siècle, était membre d’une
académie des sciences à Bagdad.
Un algorithme représente l’enchainement des actions (instructions)
nécessaires pour faire exécuter une tâche à un ordinateur (résoudre un
problème).
Notons qu’un algorithme n’est donc exécutable directement par
aucune machine. Mais il a l’avantage d’être traduit facilement dans tous les
langages de programmation.
L’algorithme prend des données en entrée, exprime un traitement
particulier et fournit des données en sortie.
Les problèmes importants en algorithmique sont:

 Complexité
 En combien de temps un algorithme va-t-il atteindre le résultat
escompté?
 De quel espace a-t-il besoin?
 Calculabilité :
 Existe-t-il des tâches pour lesquelles il n'existe aucun algorithme ?
 Etant donnée une tâche, peut-on dire s'il existe un algorithme qui la
résolve ?
 Correction
 Peut-on être sûr qu'un algorithme réponde au problème pour lequel
il a été conçu ?
 Début – fin
 Chaque algorithme pendant la conception doit avoir un début et une
fin.
[3]

1.1.1.1. Etapes d’un algorithme

 Préparation du traitement
 données nécessaires à la résolution du problème
 Traitement
 résolution pas à pas,
 après décomposition en sous-problèmes si nécessaire
 Edition des résultats
 impression à l’écran,
 dans un fichier, etc.
1.1.1.2. Structure d’un algorithme

 Activités à réaliser

L'activité contient :

Début
Affectation
Variable
Boucle
Test
Programmation parallèle

Fin
1.1.1.3. Représentation de l’algorithme
 Ordinogramme ou organigramme

Faux Vrai
condition?

Traitement 1 Traitement 2
[4]

 Pseudo code

La seule chose à préciser est une convention d'écriture :

 les différentes actions sont écrites sur des lignes séparées ;


 les lignes sont alignées à gauche sur une même verticale.

Exemple:
Afficher un message de bienvenue
Lire la date
Appeler le module DEPART
1.1.1.4. Structuration de l’algorithme

Le découpage en modules de l'ensemble du traitement d'un


programme est une étape essentielle de la structuration des traitements, elle est
préalable à la phase de programmation, est ne dépend pas du langage utilisé.

Une structure de traitement peut être décrite de trois manières :

 étape séquentielle ;
 étape conditionnelle ou test ;
 étape répétitive (ou itérative).
1.1.2. PROGRAMME

Un programme est une liste d’ordres indiquant à un ordinateur ce


qu’il doit faire. Il se présente sous la forme d’une ou plusieurs séquences
d’instructions, comportant souvent des données de base, devant être exécutées
dans un certain ordre par un processeur.

C’est aussi une suite d’instructions compréhensible par l’ordinateur


afin de traiter les données d’un problème.

1.2. PROGRAMMATION

La programmation est un ensemble des activités liées à l’écriture, la


mise au point et l’exécution d’un programme.

1.3. LANGAGE DE PROGRAMMATION

C'est un langage qui sert à décrire les actions qu'un ordinateur doit
réaliser. Ces actions sont innombrables et variées. Il peut s'agir aussi bien
d'ouvrir une fenêtre avec la souris, d'effacer un mot dans un texte, de tirer sur un
adversaire dans un jeu ou de modifier la définition de l'écran.
[5]

Il existe une multitude de langages de programmation, qui diffèrent


selon les actions souhaitées ou objectifs à atteindre : calcul, gestion,
programmation système, enseignement, calcul mathématique, intelligence
artificielle, etc.

Ainsi, des langages spécifiques sont utilisés pour concevoir des


logiciels professionnels : logiciel de gestion de production, logiciel de
comptabilité, logiciel pour la gestion des stocks, parmi tant d’autres. La
conception de logiciel informatique permet aux entreprises de disposer de
diverses applications permettant d’automatiser l’exécution de différentes tâches
liées aux processus de production.

A l'origine, les programmeurs écrivaient les programmes dans le


langage composé de mots binaires, le langage machine. Mais ils ont vite réalisé
des programmes qui utilisent des termes et des règles précis pour décrire les
actions. L'ensemble de ces mots forme un vocabulaire (d'où le terme de langage)
et suit des règles précises.

Aujourd'hui, les développeurs écrivent leurs programmes sous


forme de textes, mais toujours convertis en langage machine (le processus peut
être complexe) pour former un programme exécutable par la machine. Il existe
des centaines de langages pour s'adapter à chaque type de traitement. Le calcul
scientifique ne sera sans doute pas écrit dans le langage qui sert à la gestion d'un
compte bancaire.
1.3.1. Différents langages de programmation

Delphi/Pascal

Ce langage est relativement intuitif, rigoureux, la création


d'interface graphique simple, on peut vite se faire plaisir. La portabilité est
médiocre mais existe vers certaines plateformes.

Java

Langage objet, très portable, syntaxe utilisée également pour des


scripts internet. Il existe de nombreux environnements de développement
gratuits sur le net. Il s'agit là d'un langage "nouvelle génération" qui donnera
aussi une expérience intéressante à ceux qui souhaitent travailler en
informatique.
[6]

Python

Simple, rapide, donne de bonnes habitudes de programmation, léger


(à tel point que repasser à un autre langage après semble vite pesant), ouvert,
énormément de documentation sur internet. Il permet de vite se faire plaisir soit
en faisant des scripts puissants (grâce notamment à la programmation objet). Il
est également "nouvelle génération" et portable. Il fonctionne avec une machine
virtuelle qui peut être empaquetée grâce à certaines classes disponibles sur le
web (on en trouve de toutes sortes et à toutes fins...) dans un exe pour distribuer
l'application de manière simple et indépendante.

DotNet

Alias le futur selon Microsoft, du bon et du mauvais dans cette


plateforme, mais elle permet de programmer des applications graphiques de
manière simple, ne tourne que sous Windows avec quelques tentatives adaptives
sous Linux. Sa syntaxe est proche du C et de java, pas de pointeurs, tout se passe
à un niveau d'abstraction supérieur aux anciens langages microsoft. C'est
comparable à Java et à Python, sauf que ce n'est pas libre.

Depuis la version 2008 (Framework 3.0) Microsoft propose une


version gratuite Visual Studio Express. Ces versions permettent de développer
les mêmes applications que les versions payantes, en revanche elles ne sont pas
dotées de nombreux outils pour simplifier le développement (seul ou en groupe),
le déploiement ou encore le mutli-plateforme.

Depuis 2014, Microsoft propose une version plus performante


appelée Visual Studio Community, gratuite pour la recherche, les petites
sociétés et le développement non professionnel.

C/C++

Ce sont de bons langages, mais avec une syntaxe compliquée qui ne


facilite pas leur apprentissage. De plus l'utilisation des pointeurs rend leur
utilisation, même par des professionnels, souvent ardue. L'avantage est que ces
langages peuvent être utilisés sur plusieurs plateformes (après compilation) et
que, une fois maîtrisés, ils font paraître les autres plus simples.
[7]

PHP

Un langage initialement prévu pour le développement de pages web


dynamiques. Sa syntaxe est proche du C++. PHP est assez "simple" à aborder et
permet de communiquer assez facilement avec une base de données.
Pour développer des pages web dynamiques, il requiert aussi une bonne
connaissance de l'HTML et éventuellement du SQL si vous avez besoin d'une
base de données.

Il permet notamment d'avoir rapidement une "visibilité" de son


travail en le mettant en ligne, et ainsi d'avoir les commentaires/suggestions des
internautes. On peut également développer des applications normales avec ce
langage (hors web).

Notons aussi que vous pouvez programmer de manière procédurale


ou orientée objet, au choix, ça permet un bon tour d'horizon. Ceci dit c'est un
bon langage mais pas forcément le meilleur pour apprendre.

Visual Basic/Basic

C’est un langage événementiel, il facilite la création des interfaces


graphiques pour Windows. Il est aujourd’hui amélioré avec la plateforme
Fraework.Net.
[8]

CHAPITRE II. LE DEVELOPPEMENT DES LOGICIELS


L’informatique joue désormais un rôle stratégique dans le
développement et la compétitivité d’une entreprise. Pourtant, chaque entreprise
a des besoins spécifiques et des processus de production différents, d’où la
nécessité de recourir aux services d’un prestataire de services informatiques
pour la conception de logiciels informatiques personnalisés dit sur-mesure.

2.1. Conception de logiciel informatique

La conception de logiciel informatique consiste en un ensemble de


processus incluant une étude des besoins, la conception proprement dite, la mise
au point, la maintenance et l’optimisation. Ces divers processus sont réalisés à
l’aide d’un ou plusieurs langages informatiques spécifiques.

Lorsque vous avez un besoin informatique, vous cherchez les


logiciels qui pourraient vous convenir. Mais ces logiciels sont standardisés pour
convenir au plus grand nombre, ils ne pourront donc peut-être pas forcément
répondre parfaitement à votre besoin. La conception de logiciel informatique est
donc proposée aux entreprises souhaitant disposer d’un logiciel sur-mesure pour
mieux gérer leurs activités.
2.1.1. Etapes du développement de logiciel

Pour développer un logiciel, on suit un certain nombre d'étapes bien


identifiées : définition et production des différents modules, phase de tests,
assemblage… jusqu'à l'installation sur les supports des utilisateurs.

Il s’agit donc de l’analyse des problèmes, de la traduction de


l’algorithme, de la compilation et de l’édition des liens.

 Conception du logiciel
 Cahier des charges

C'est la première étape du développement spécifique. Le client


indique aux ingénieurs informatiques le type de solution qu'ils souhaitent, son
utilisation et ce qu'il en attend. Les supports utilisés sont précisés : ordinateurs
de bureau, portables, tablettes PC…
[9]

 Conception générale

Avec ces données, les ingénieurs définissent les langages et


éléments à utiliser et estiment la durée de développement. Ils présentent cette
proposition au client pour validation du projet.

 Conception détaillée

Ensuite, les ingénieurs affinent le projet. Ils tracent l'architecture du


progiciel, définissent précisément ses fonctions et les ensembles qui le
composent.

 Création du logiciel
 Codage des ensembles

Le développement spécifique commence à cet instant précis.


Parfois, plusieurs équipes travaillent en collaboration, chacune sur un sous-
ensemble, bien que ce ne soit pas toujours souhaitable. Dans le cadre des
Méthodes Agiles, par exemple, une équipe unique est préférable afin de
favoriser la communication indispensable.

 Tests avant intégration

Afin de garantir l'efficacité de l'application, de nombreux tests sont


réalisés aux différentes étapes de production. Les tests qui interviennent à la fin
du développement des modules sont cruciaux. En effet, l'intégration qui vient
ensuite pourrait échouer par la faute d'un ensemble imparfait.

 Intégration, tests complets et qualification

Lors de l'intégration, on assemble les différents modules et on crée


les interfaces. A chaque stade, des tests sont effectués afin d'éprouver la
compatibilité des ensembles. Lors des tests finaux, on vérifie la conformité de
l'application avec le cahier des charges.

 Implémentation et documentation

Si les tests sont satisfaisants, on passe aux dernières étapes du


développement spécifique : l'implémentation et la documentation. Les
techniciens installent le nouvel outil informatique dans le système du client
(outil informatique définition).
[10]

CHAPITRE III. LE SYSTEME DE GESTION DES BASES DE DONNEES


3.1. Principe de fonctionnement d’une base de données

Les bases de données sont devenues des éléments incontournables


de la majorité des applications.

Elles se substituent à l’utilisation de fichiers gérés par le


développeur lui-même.

Cet apport permet un gain de productivité important lors du dévelop


pement et une amélioration significative des performances des applications.

Elles facilitent également le partage d’informations entre


utilisateurs. Pour pouvoir utiliser une base de données, vous devez
connaître un minimum de vocabulaire lié à cette technologie.
3.1.1. Terminologie

Dans le contexte des bases de données, les termes suivants sont


fréquemment utilisés :

Base de données relationnelle

Une base de donnée relationnelle est un type de base de


données qui utilise des tables pour le stockage des informations. Elles utilisent
des valeurs issues de deux tables, pour associer les données d’une table aux
données d’une autre table.

En règle générale, dans une base de données relationnelle, les


informations ne sont stockées qu’une seule fois.

Table

Une table est un composant d’une base de données qui stocke les in
formations dans des enregistrements (lignes) et dans des champs (colonnes).
Les informations sont, en général, regroupées par catégorie au niveau d’une
table. Par exemple, nous aurons la table des Clients, des Produits ou des
commandes.
[11]

Enregistrement

L’enregistrement est l’ensemble des informations relatives à un élé


ment d’une table. Les enregistrements sont les équivalents, au niveau logique,
des lignes d’une table. Par exemple, un enregistrement de la table Clients contie
nt les caractéristiques d’un client particulier.

Champ

Un enregistrement est composé de plusieurs champs. Chaque


champ d’un enregistrement contient une seule information sur
l’enregistrement. Par exemple, un enregistrement Client peut contenir les cham
ps CodeClient, Nom, Prénom...

Clé primaire

Une clé primaire est utilisée pour identifier, de manière unique, cha
que ligne d’une table. La clé primaire est un champ ou une combinaison de
champs dont la valeur est unique dans la table. Par exemple, le champ
CodeClient est la clé primaire de la table Client. Il ne peut pas y avoir deux
clients ayant le même code.

Clé étrangère

Une clé étrangère représente un ou plusieurs champs d’une table,


qui font référence aux champs de la clé primaire d’une autre table. Les clés
étrangères indiquent la manière dont les tables sont liées.

Relation

Une relation est une association établie entre des champs communs
dans deux tables. Une relation peut être de un à un, de un à plusieurs ou de
plusieurs à plusieurs. Grâce aux relations, les résultats de requêtes peuvent conte
nir des données issues de plusieurs tables. Une relation de un à plusieurs
entre la table Client et la table Commande permet à une requête de renvoyer
toutes les commandes correspondant à un client.
[12]

3.2. Applications de gestion de base de données

Une base de données informatique implique un volume important


d’informations reliées entre elles. C’est pourquoi, des applications de gestion de
bases de données telles qu’ACCESS, ont été conçues pour mettre en ordre ces
données, les utiliser pour effectuer des opérations de calcul, des recherches, des
tris, etc. À cela s’ajoute la possibilité de mettre en forme, imprimer et
communiquer à des tiers les informations structurées de la base de données.

ACCESS est un système passif de gestion de base de données


(SGBD) relationnelle, ce qui signifie que le fichier Access ne vit que lorsque un
utilisateur l'a ouvert, sans utilisateur il reste inerte au contraire des gestionnaires
de bases de données actives (ORACLE, MYSQL, SQL SERVER, DB2, ...) qui
se restructurent sans arrêt pour offrir à leurs usagers les temps de réponses les
plus efficaces.
[13]

CHAPITRE IV. PROGRAMMATION ORIENTE-OBJET AVEC VB.NET


4.1. INTRODUCTION

Avec Visual Basic.NET, la notion d’objet est devenue omniprésente


et nécessite un minimum d’apprentissage. Nous allons donc voir dans un
premier temps le principe de la programmation objet et le vocabulaire associé,
puis nous verrons comment mettre cela en application avec Visual Basic.

Dans un langage procédural classique, le fonctionnement d’une


application est réglé par une succession d’appels aux différentes procédures
et fonctions disponibles dans le code. Il n’y a aucune liaison entre les données et
les procédures qui les manipulent. Dans un langage objet, on va au contraire
essayer de regrouper au maximum les données et le code pour les manipuler.
Les classes sont la représentation symbolique des objets. Elles décrivent les
champs, propriétés, méthodes et événements de la même manière qu’un plan
d’architecte décrit les différentes parties d’un bâtiment.

Poursuivons notre analogie entre une classe et un plan de bâtiment.


Nous savons qu’Il est possible de construire plusieurs bâtiments à partir du
même plan. De la même manière, plusieurs objets peuvent être construits à partir
de la même classe. Une classe peut donc être utilisée pour créer autant
d’instances que nécessaire.

Sur un plan de bâtiment, certaines zones peuvent avoir un accès


limité à certaines personnes. De la même façon, dans une classe, certains
éléments peuvent avoir un accès restreint. C’est le principe d’encapsulation.

Les termes classe et objet sont souvent confondus mais il


s’agit, en fait, d’éléments bien distincts. Une classe représente la structure
d’un élément alors que l’objet est un exemplaire créé sur le modèle de cette
structure.

La modification d’un élément dans un objet ne change absolument


pas les autres objets créés à partir du même modèle (classe).

Dans notre exemple de plan de bâtiment, l’ajout d’une nouvelle


pièce à un bâtiment existant ne change rien aux autres bâtiments construits
suivant le même plan. Par contre, la modification du plan (de la classe) entraîne
des modifications pour tous les nouveaux bâtiments (tous les nouveaux objets).
[14]

Les classes sont constituées de champs, propriétés, méthodes


et événements. Les champs et les propriétés représentent les informations
contenues dans les objets. Les champs sont considérés comme des variables et il
est possible de lire leur contenu ou de leur affecter une valeur
directement. Par exemple, si vous avez une classe représentant un client,
vous pouvez enregistrer son nom dans un champ.

Les propriétés se manipulent de la même façon que les champs,


mais sont mises en œuvre à partir de procédures de propriété Get et Set. Ceci
autorise plus de contrôle sur la façon dont les valeurs sont lues ou affectées et
permet de valider les données avant leur utilisation.

Les méthodes représentent les actions qu’un objet peut


effectuer. Elles sont mises en œuvre par la création de procédures ou
fonctions dans une classe.

Les événements sont des informations qu’un objet reçoit ou transme


t depuis ou vers un autre objet ou application. Les événements permettent aux
objets d’exécuter des actions lorsqu’une situation particulière se produit.

Comme Windows est un système d’exploitation événementiel,


les événements peuvent provenir d’autres objets, du système ou des actions
de l’utilisateur sur la souris et le clavier.

Ceci n’est qu’une facette de la programmation orientée objet. Trois


autres éléments sont également fondamentaux :

 L’encapsulation.
 L’héritage.
 Le polymorphisme.

L’encapsulation est la capacité permettant de créer et de


contrôler l’accès à un groupe d’éléments. Les classes fournissent le
moyen le plus fiable d’assurer l’encapsulation. Si nous prennons l’exemple d’un
compte bancaire, dans une programmation classique, il nous faudrait de
nombreuses variables et procédures ou fonctions pour manipuler les
informations.

La situation serait encore plus complexe si nous devions gérer


simultanément plusieurs comptes bancaires.
[15]

Il faudrait alors travailler avec des tableaux et jongler avec


les index. L’encapsulation permet de regrouper les informations et le
code les manipulant dans une classe. Si vous devez travailler avec
plusieurs comptes bancaires simultanément vous aurez alors plusieurs
instances de la même classe, limitant ainsi le risque d’erreurs.

L’encapsulation assure également un contrôle sur l’utilisation


des données et des procédures ou fonctions. Vous pouvez utiliser les
modificateurs d’accès, tels que Private ou Protected, pour restreindre
l’accès à certaines méthodes, propriétés ou champs.

Une règle fondamentale de l’encapsulation stipule que les données


d’une classe ne doivent être manipulées que par le code de la classe
(procédures de propriétés ou méthodes). Cette technique est parfois appelée
dissimulation de données. Elle assure la sécurité de fonctionnement de votre
code en masquant les détails internes de la classe et en évitant ainsi qu’ils ne
soient utilisés de manière inappropriée. Elle autorise aussi la modification d’une
partie du code sans perturber le fonctionnement du reste de l’application.

L’héritage permet la création d’une nouvelle classe, basée sur une


classe existante. La classe servant de modèle pour la création d’une autre classe
est appelée classe de base. La classe ainsi créée hérite des champs, propriétés,
méthodes et événements de la classe de base.

La nouvelle classe peut être personnalisée en y ajoutant des


champs, propriétés, méthodes et événements. Les classes créées à partir
d’une classe de base sont appelées classes dérivées. Vous pouvez donc définir
une classe de base et la réutiliser plusieurs fois pour créer des classes dérivées.

Le polymorphisme est une autre notion importante de la


programmation orientée objet. Par son intermédiaire, il est possible d’utiliser
plusieurs classes de manière interchangeable même si ces classes
implémentent leurs propriétés et méthodes de manière différente.

Ces propriétés et méthodes sont utilisables par le même nom,


indépendamment de la classe à partir de laquelle l’objet a été construit.
Trois autres concepts sont également associés au polymorphisme.
La surcharge, la substitution et le masquage de membres permettent la
définition de membres d’une classe portant le même nom. Il existe cependant
quelques petites distinctions entre ces trois techniques.
[16]

La surcharge est utilisée pour concevoir des propriétés ou des


méthodes portant le même nom mais ayant un nombre de paramètres différents
ou des types de paramètres différents.

La substitution permet la redéfinition de méthodes ou propriétés


héritées d’une classe de base. Les membres substitués peuvent accepter le
même nombre et type de paramètres que la méthode ou propriété de la
classe de base.
Le masquage sert à remplacer localement, dans une classe, un
membre d’une classe. N’importe quel type de membre peut masquer un autre
membre.

Par exemple, une propriété peut masquer une méthode héritée.


Le masquage se fait uniquement grâce au nom. Les membres masqués ne
sont pas héritables.
4.2. Configuration nécessaire

Pour permettre un fonctionnement correct, Visual Studio nécessite


une configuration minimale. Microsoft conseille les valeurs suivantes :
Composant Minimum recommandé Performances optimales
Processeur Pentium 1,6 GHz ou équivalent Pentium 2,2 GHz ou équivalent
RAM 384 Mo 1024 Mo
Espace disque 1 GB sur le disque système et de 2,8 à
3,8 GB sur un autre disque
Vidéo 1024 x 768 1280 x 1024
Lecteur CD-Rom ou DVD Indispensable Indispensable
Système d’exploitation Microsoft Windows XP Microsoft, Toute version ultérieure (XP,
Windows Server 2003, Microsoft 2003) avec le dernier service pack
Windows Vista disponible (SP2 pour XP, SP2 pour
Windows 2003)

4.3. STRUCTURES DE BASEVISUAL BASIC .NET

Dans cette section nous allons présenter les structures de base de la


programmation en VB. Nous allons d’abord présenter la notion de variable, les
différents types standards, les opérateurs arithmétiques, les structures usuelles:
structures de contrôles (Instructions conditionnelles et répétitives), les structures
de données élaborées (vecteurs et matrices) et finalement, les procédures et les
fonctions.
[17]

Quelques remarques :
 Cette première section présente les structures théoriques de VB. Il est
conseillé de la parcourir une première fois (sans trop insister) pour avoir
une idée des structures de base de VB. Au fur et à mesure que vous
avancerez dans le cours, vous devez y revenir pour approfondir la partie
qui vous intéresse.
 Votre application VB sera composée d’un ou plusieurs fichiers
(formulaires et modules) contenant du code VB.
 Il n’existe pas de séparateurs d’instructions en VB (comme le ‘ ; ’ en
Pascal ou en C et le ‘. ‘ en Cobol).
 VB ne fait pas de distinction entre les minuscules et les majuscules. Ainsi,
ValeurVariable et vALEURvARIABLE représentent la même variable.
En fait, VB est ‘très intelligent’, en ce sens qu’il vous réécrira
(automatiquement) la variable dans le format de caractères que vous avez
utilisé lors de sa déclaration.

4.4. Variable et opérations arithmétiques


4.4.1 Notion de Variable

Les variables sont nécessaires pour stocker (conserver) une valeur


dynamique et réutilisable. C'est en fait une simple zone mémoire qui porte un
nom choisi par le programmeur. Le nom de la variable est une adresse mémoire.
Si l’on veut une programmation cohérente, il faut déclarer chaque variable en
précisant le type de celle-ci. La déclaration se fait avec le mot réservé Dim.

Syntaxe

Dim NomVariable As Type

Pour la lisibilité du code, on peut ajouter un commentaire après une


apostrophe ( ‘ )

Par défaut, le compilateur VB considère que toute variable qui


apparaît doit avoir été déclarée. Toutefois, si vous ajoutez dans votre code la
ligne

Option Explicit Off


[18]

VB sera permissif et vous autorisera à utiliser des variables sans les


déclarer. Prenez la très bonne habitude de toujours déclarer vos variables.

Pour éviter tout problème il est préférable d’initialiser les variables


déclarées.

Exemples
Compteur = 0
‘ = est le symbole d’affectation en VB
Taux = 21

Le langage VB utilise plusieurs types de données dont les plus


utilisés sont le type String (chaîne de caractères), le type Integer (entier) et le
type Single (décimal). Les types standards de données en VB sont résumés dans
le tableau ci-dessous.

Types standards de données


[19]

4.4.2 Opérateurs arithmétiques

VB reconnaît les opérateurs arithmétiques usuels qui sont résumés


dans le tableau suivant :

Opérateurs arithmétiques

Si, dans une expression arithmétique plusieurs opérateurs sont


utilisés, les priorités sont résolues comme indiqué dans le tableau qui suit :

Priorité des opérateurs arithmétiques

4.5. Instructions conditionnelles

Les deux instructions conditionnelles le plus utilisées en VB sont If


et Select Case.
4.5.1. If … Then … Else … End If

Si la condition se trouvant après le mot réservé If est vraie, les


instructions qui suivent le mot réservé Then sont exécutées sinon, ce sont celles
qui suivent le mot réservé Else qui sont exécutées. L’instruction If se termine
(obligatoirement) avec les mots réservés End If.
[20]

Forme simple :

Syntaxe

Exemple

Forme imbriquée

Syntaxe

Exemple
[21]

Opérateurs de comparaison

Si plusieurs conditions doivent être testées, celles-ci doivent être


combinées avec des opérateurs logiques. VB accepte les opérateurs logiques
suivants: AND, OR, NOT et XOR. La signification de chacun d’eux est
présentée dans le tableau qui suit:

Opérateurs logiques

4.5.2 IIf (Condition, ValeurSiVrai, ValeurSiFaux)

Cette instruction (IIF) fonctionne comme le IF d'EXCEL.

Syntaxe

IIf (Condition, ValeurSiVrai, ValeurSiFaux)

Exemple
Dim Note As Single
Dim Réponse As String
Note = InputBox (" Tapez votre note ")
Réponse = IIf (Note >= 10, " Admis ", " Ajourné ")
MsgBox (Réponse)
[22]

4.5.3. Select case … Case … Case …Else Case … End Select

L’instruction Select Case est une instruction conditionnelle


alternative, c’est-à-dire qu’une expression peut être testée par rapport à plusieurs
valeurs possibles.

Syntaxe

Les instructions se trouvant après ‘Case Liste_Valeurs_i’ seront


exécutées si ‘expression = à l’un des éléments de Liste_Valeurs_i’, i = 1, 2, 3,
…. Sinon, les instructions se trouvant après ‘Else Case’ seront exécutées.
Liste_Valeurs_i peut être :
 une suite de valeurs : 1, 3, 5, 7, 9
 une fourchette de valeur : 0 To 9
 une plage de valeur : Is >= 10 (Is est un mot réservé)

Exemple

Notez que ‘Liste_Valeurs_i’ peut être une combinaison de listes de


valeurs comme dans le cas des exemples suivants :
Case 1 To 4, 7 To 9, 11, 13, Is > NombreMAx
Case "Lundi", "Mercredi", "Dimanche", VariableJour
[23]

4.6. Instructions répétitives

Les instructions répétitives sont utilisées pour boucler sur une suite
d’instructions.
4.6.1 For … To … Next

Si le nombre de boucles est connu à l’avance, on utilise l'instruction


For … To … Next.

Syntaxe

Le test (Compteur = Début) est effectué au début de la boucle. La


variable numérique Compteur est incrémentée à chaque fin de boucle du nombre
indiqué par l’incrément. Si l’Incrément (le pas par lequel Compteur augmente à
chaque boucle) n’est pas spécifié, il est fixé par défaut à 1.

Si la valeur de Fin est inférieure à la valeur de Début, l’incrément


est négatif. La valeur de Compteur peut être utilisée (par exemple, pour
numéroter le passage dans la boucle) mais ne doit pas être modifiée dans le
corps de la boucle.

Exemple
Dim i As Integer
Dim Chaîne As String
Dim TabInitial(1 To 12) As Single
For i = 1 To 12
Chaîne = InputBox("Température N° " & Compteur)
TabInitial(i) = Chaîne
Next i ‘le i n’est pas obligatoire
[24]

4.6.2 Do While … Loop / Do … Loop While …

Test antérieur

Syntaxe

La condition est ici testée au début, c'est-à-dire à l’entrée de la


boucle. Avec While (tant que), la boucle est répétée tant que la condition est
vraie. Si la condition n’est pas vraie au départ, les instructions de la boucle ne
sont pas exécutées.

Exemple
Do While MotProposé <> MotDePasse
MotProposé = InputBox("Donnez votre mot de passe")
Loop
Cela présuppose que MotProposé soit initialisé par une valeur autre
que MotDePasse (par exemple, la valeur par défaut "").

Test postérieur

Syntaxe

La condition est alors testée à la fin de la boucle. Avec While (tant


que), la boucle est répétée tant que la condition est vraie. Les instructions de la
boucle sont donc exécutées au moins une fois.

Exemple
Do
MotProposé = InputBox("Donnez votre mot de passe")
Loop While MotProposé <> MotDePasse
Cet exemple ne présuppose aucune initialisation de MotProposé.
[25]

4.6.3 Do Until … Loop / Do … Loop Until …

Test antérieur

Syntaxe

La condition est ici testée au début, c'est-à-dire à l’entrée de la


boucle. Avec Until (jusqu'à), la boucle est répétée jusqu'à ce que la condition
soit vraie. Si la condition est vraie au départ, les instructions de la boucle ne sont
pas exécutées.

Exemple
Do Until MotProposé = MotDePasse
MotProposé = InputBox("Donnez votre mot de passe")
Loop
Cela présuppose que MotProposé soit initialisé par une valeur autre
que MotDePasse (par exemple, la valeur par défaut "").

Test postérieur

Syntaxe

La condition est alors testée à la fin de la boucle. Les instructions de


la boucle sont donc exécutées au moins une fois. Avec Until (jusqu'à), la boucle
est répétée jusqu'à ce que la condition soit vraie.

Exemple
Do
MotProposé = InputBox("Donnez votre mot de passe")
Loop Until MotProposé = MotDePasse
Cet exemple ne présuppose aucune initialisation de MotProposé.
[26]

4.6.4. For … Each … Next

C’est une extension de la boucle For ... To … Next.

Syntaxe

Ensemble est le plus souvent un tableau.

Exemple

4.6.5 Choix de la structure

Selon le problème à traiter, vous aurez le choix entre ces différentes


structures de contrôle. Il s'agira de choisir la plus élégante ou du moins, celle qui
ne provoquera pas de dysfonctionnement de votre programme.

Trouvez les erreurs dans les exemples suivants :


[27]

4.7. Tableaux

Un tableau permet de stocker une suite d’éléments de même type.


L’accès à un élément précis se fait à l’aide d’un indice (valeur ou variable
entière). En VB, pour un vecteur déclaré avec une dimension (N), le premier
élément a l’indice 0, le deuxième a l’indice 2, le troisième a l’indice 3, …, le
dernier a l’indice N.

Syntaxe

Dim NomVecteur(N) As TypeVecteur

Cette instruction déclare un vecteur NomVecteur de taille N+1.


Pour accéder au ième élément du vecteur, il faut préciser l’indice entre
parenthèses comme suit : NomVecteur(i-1), i doit être compris dans l’intervalle
[0, N].

TypeVecteur est un type standard (Boolean, Integer, String, etc.) ou


tout autre type (type d’objet) définie dans VB ou dans votre application.

Exemple

Dim TabTemp(12) As Single

L'accès à la case numéro 3 se fait par TabTemp(3) qui vaut 7.

Syntaxe
Dim NomVecteur(1 To N) As TypeVecteur ‘ déclare un vecteur de N éléments

Exemple
Dim TabMajuscules(65 to 90) As String

VB permet de travailler avec des tableaux de deux, trois, quatre,


dimensions ou plus
[28]

Exemple d'un tableau à deux dimensions:


Dim ExempleMatrice(10, 10) As Single

ExempleMatrice est une matrice (de nombres réels) de 11 lignes et


11 colonnes et où ExempleMatrice(1, 9) est l’élément se trouvant à l’intersection
de la première ligne et de la dixième colonne.

Aussi, pour éviter toute confusion (et garder vos bonnes habitudes
Pascal), déclarez toujours la matrice avec une dimension N*N et ignorez la ligne
et la colonne à l’indice 0.

Exemple de déclaration d’un tableau à trois dimensions:


Dim ExempleMatrice(10, 10, 10) As Single ‘ matrice à trois dimensions

4.8. Procédures et Fonctions

Comme dans le cas du langage Pascal, VB.NET permet l’utilisation


des procédures et des fonctions avec ou sans paramètres. Rappelez-vous que la
grande différence entre la procédure et la fonction est que cette dernière retourne
une valeur lorsqu’elle est appelée.

Lors de l’appel de la procédure, un paramètre peut être transmis soit


par valeur, soit par référence (variable).
4.8.1. Procédure (Transmission par valeur : ByVal)

Pour transmettre un paramètre par valeur, celui-ci doit être


obligatoirement précédé par le mot réservé ByVal. Sinon, il est considéré de
passer par référence.
[29]

L’appel de la procédure se fait soit en inscrivant call suivi du nom


de la procédure, et des paramètres à lui transmettre, soit en écrivant uniquement
le nom de la procédure, suivi des paramètres à lui transmettre.

4.8.2. Procédure (Transmission par référence : ByRef)

Si ByVal n’est pas précisé ou si le paramètre est précédé par le mot


réservé ByRef, la variable est transmise par référence (c'est-à-dire transmise en
tant que variable). Ainsi, toute modification de la variable locale correspondante
dans la procédure se répercute sur la variable utilisée lors de l’appel. VB
suppose que la transmission se fait par référence si le mot réservé ByVal est
omis.

L’appel suivant transvase le contenu de X dans Y et inversement.


[30]

4.8.3 Fonction

Lors de la déclaration d'une fonction, la valeur qui doit être


retournée par celle-ci doit être affectée au nom de la fonction. La déclaration de
la fonction se termine par les mots réservés ”End function”.

L’appel suivant retourne la somme de X et Y et affecte le résultat à


la variable Z.

4.8.4. Transmission d’un tableau comme argument d’une procédure ou d’une


fonction

Pour transmettre un tableau comme argument d’une fonction ou


d’une procédure, il suffit de déclarer (à l’intérieur des parenthèses) une variable
(le nom local du tableau) sans type, ni dimension. Lors de l’appel de la fonction
ou de la procédure, VB donne à cette variable le type et la taille du tableau
envoyé. On peut aussi utiliser comme type de la variable locale, le type Variant.
Comme tout variable, un tableau peut être envoyé par valeur ou par référence.

Ci-après vous trouvez un exemple de déclaration d’une procédure


qui reçoit un vecteur (passation par référence: par défaut).
[31]

L’appel de la procédure avec un vecteur comme argument se fait


comme pour toute variable.

4.8.5 Portée des variables, procédures et fonctions

Une application VB peut être composée d’un ou de plusieurs


formulaires et d’un ou de plusieurs modules. Dans chaque module ou
formulaire, des variables, des procédures et/ou des fonctions peuvent être
déclarées. Dans chaque procédure et fonction, des variables locales peuvent être
déclarées.

Une fonction ou une procédure peut être déclarée soit Privée


(Private), soit Publique (Public). Le sens de Privé ou Public se comprend par
rapport au formulaire ou au module dans lesquelles elles sont déclarées.

Se pose alors le problème de la portée des variables, des fonctions


et des procédures.

Si une variable est déclarée au début de la procédure (fonction) qui


la manipule (Dim ou Private), elle n’est alors valide que pour cette procédure
(fonction). L'existence et la valeur de la variable disparaissent avec l'instruction
End Sub (End Function). Toute référence à cette variable en dehors de cette
procédure (fonction) provoquera une erreur de compilation. Si une variable est
déclarée dans la section des déclarations d’un module (formulaire), elle est
valide dans toutes les procédures (fonctions) du module (formulaire).

Une variable peut aussi être déclarée Public ou Global et sera alors
valide pour toute l’application.

Exemple :
Global MotInitial As String ‘ premier mot à traiter
[32]

Le tableau qui suit résume la portée des variables, des procédures et


des fonctions en fonction du type de déclaration (Dim, Private ou Public) et de
l’endroit où la déclaration a eu lieu.

Portée des variables, procédures et fonctions

4.8.6 Quelques fonctions globales

Les deux tableaux suivant résument quelques fonctions


mathématiques et quelques fonctions pour la manipulation des chaînes de
caractères.
[33]

4.8.7 Interruption de séquences

Pour interrompre l’exécution d’une séquence d’instructions (dans


une fonction, procédure ou boucle For), on utilise l’instruction Exit. Le tableau
suivant résume son utilisation.
[34]

Les possibilités d’interruption de séquences

4.9. L’ENVIRONNEMENT DE DEVELOPPEMENT VB.NET

La programmation en Visual Basic (VB) se fait principalement de


manière visuelle. Vous serez cependant souvent amenés à programmer en
écrivant du code VB.

VB est avant tout un environnement de développement


d’applications informatiques. VB offre entre autres:

 un environnement graphique de développement permettant de développer


visuellement une grande partie de votre application.
 un langage de programmation orienté objet (voir plus loin le concept
d’objet)
 des composants logiciels (ActiveX) ou des librairies (pré-programmées)
très puissants et prêts à être intégrés et utilisés dans votre application. On
verra par la suite qu’une grande partie de votre apprentissage de VB
consistera à apprendre l’utilisation de ces composants logiciels (contrôles)
 la possibilité d’intégrer aisément de nouveaux composants ActiveX
développés dans le commerce
 une grande facilité pour développer de nouveaux composants ActiveX

VB est devenu grâce à ces atouts un langage de programmation très


utilisé de par le monde, supplantant un grand nombre de langages de
programmation.

Pour rentrer dans le vif du sujet, nous allons regarder de quoi sera
composée votre application (programme) VB. Celle-ci sera composée, entre
autres, de deux parties essentielles: un ou plusieurs formulaires (la partie
visuelle ou graphique) et le code VB (des formulaires et modules).
[35]

4.9.1. Environnement graphique

Figure 1: Environnement de développement Visual Basic .NET

4.9.1.1 Formulaires (Forms)

La partie visuelle de votre application ou projet est composée


principalement d’UN ou de PLUSIEURS formulaires (Forms). Un formulaire
n’est rien d’autre qu’une fenêtre (Window). Les figures 1 et 2 présentent des
exemples de formulaires.
[36]

Figure 2 : Exemple d’un formulaire vierge

Pratique.

Pour démarrer VB, double cliquez sur l’icône VB6.exe

La fenêtre qui apparaît alors à l’écran vous propose soit d’ouvrir un


projet existant, soit de créer un nouveau projet (new project) (figure 3).

Figure 3 : Fenêtre de choix d’ouverture ou de création de projet


[37]

Lorsque vous faites un nouveau projet, il vous reste à choisir le type


de projet que vous allez créer (Visual Basic Projects – sur la gauche de l’écran),
le modèle utilisé (Application Windows) ainsi que le nom associé à ce projet et
l’emplacement sur le disque où seront stockées ces informations (attention, sur
les ordinateurs de l’IAG, vous ne pouvez enregistrer que sur le disque L)

Figure 4 : Fenêtre de création d’un nouveau Projet

Il est également toujours possible de créer un nouveau projet en


sélectionnant dans la barre du menu VB, File, New Project.
[38]

Figure 5 : Projet nouvellement créé, composé d’un seul formulaire vierge (Form1)

VB va créer un projet composé d’un formulaire portant un nom


généré automatiquement : Form1, voir figure 5.

L’environnement VB est composé de trois types d’éléments : ƒ

 une zone de barre de menus et de barres d’outils, ƒ


 une zone de travail central ƒ
 une multitude de fenêtres qui gravitent autour, constituant les différents
outils mis à votre disposition pour travailler
4.9.1.2 L’explorateur des solutions

L’explorateur des solutions présente de manière arborescence et


visuelle les objets composant l’application chargée. La figure 6(a) montre que le
projet de nom ‘WindowsApplication8’ est composé d’un seul formulaire de nom
‘Form1’.
[39]

Figure 6(a): L’explorateur des solutions

Figure 6(b): Fenêtre des propriétés du projet

Les ‘Forms’ constitueront les objets principaux qui composeront


vos projets dans ce cours. Notez qu’un projet peut être composé d’un ou de
plusieurs formulaires. Dans ce dernier cas, il faut préciser à VB le formulaire qui
sera chargé en premier, en cliquant sur le nom du projet avec le bouton droit de
la souris et ensuite sur Properties, voir figure 6(b) où le projet est composé de
deux formulaires, Form1 et Form2.
4.9.1.3 La fenêtre Properties

La fenêtre Properties présente les propriétés (ou attributs) de l’objet


sélectionné. La figure 6 présente les propriétés de l’objet (sélectionné) Form1.
[40]

On peut citer quelques propriétés de ‘Form1’ et leurs valeurs


respectives:

 Name = Form1, nom logique utilisé pour référencer l’objet dans du code
VB.
 BackColor = &H800000, couleur de fond de l’objet Form1.
 Text = Form1, nom qui apparaît visuellement sur l’objet, celui-ci peut être
différent de la propriété Name.

Figure 7: Fenêtre Properties

Notez que la valeur de chaque propriété peut être modifiée en


cliquant sur la colonne de droite de la fenêtre Properties.

Pratique.

Modifiez la valeur des propriétés suivantes :

 Text = Convertisseur FB en Euro,


 BackColor = à votre guise,
 Etc.

N.B. Ne modifiez que les propriétés dont vous comprenez le sens


4.9.1.4 La boîte à outils et les contrôles standards

La partie graphique de votre application va contenir un (ou


plusieurs) formulaire(s). Sur un formulaire, on peut placer un ou plusieurs objets
graphiques ou ce qu’on appellera des contrôles (Bouton à cliquer, Champ libellé
(texte statique), Champ texte à saisir au clavier, Menu, etc.).
[41]

Ces contrôles sont des objets pré-programmés dont l’utilité


principale est de faciliter l’interaction avec l’utilisateur. Chacun de ces objets
graphiques a une fonctionnalité bien précise. Le tableau suivant résume les
contrôles standards de base les plus utilisés:

Figure 8 : Toolbox
[42]

Les contrôles standards dans VB se trouvent dans la Boîte à outils


(ToolBox), voir figure 8. D’autres contrôles plus élaborés (Components)
peuvent être ajoutés dans la boîte à outils, en sélectionnant dans la barre du
menu : Project, Add Components.

Comment placer un contrôle sur un formulaire ?

Sélectionnez dans la boîte à outils le contrôle désiré. Dessinez sur le formulaire le rectangle
dans lequel vous voulez placer le dit contrôle. Pour ce faire, cliquez (sans relâcher) sur le
bouton gauche de la souris, sur le coin haut gauche du rectangle et déplacez la souris vers le
coin bas droit du rectangle puis relâchez le bouton de la souris. Le contrôle apparaît par
magie sur le formulaire.

Comment déplacer un contrôle ou le redimensionner ?

Sélectionnez d’abord (en cliquant dessus) le contrôle placé sur le formulaire. Glissez le vers
l’endroit désiré ou cliquez et tirez sur l’un des huit petits carrés bleus délimitant l’objet
sélectionné (le contrôle Label Euro est sélectionné dans la figure 8)

Chaque contrôle peut être vu comme un objet défini par un


ensemble de propriétés. Quand un contrôle, placé sur un formulaire, et
sélectionné, ses propriétés apparaissent dans la fenêtre Properties.

De manière générale, une fois qu’un objet est sélectionné, ses


propriétés apparaissent dans la fenêtre Properties. Notez que certains objets
(contrôles, formulaires, etc.) ont les mêmes propriétés, par exemple Name et
Text, mais ont bien évidemment des valeurs différentes qui leurs sont propres.

Pratique.

Placez les contrôles suivants sur le formulaire qui a été créé:


[43]

Modifiez leurs positions et leurs propriétés pour que le formulaire apparaisse


comme suit :

Figure 9 : Exemple de conception d’un formulaire

Nous venons de créer un programme (graphique et statique) sans


écrire aucune ligne de code VB. Celui-ci peut d’être exécuté. Ce programme ne
fait qu’afficher une boite de dialogue ayant la forme de la figure 9. Pour lui
donner vie (lui faire faire ce qui est désiré), c’est-à-dire convertir du Franc Belge
en Euro, il faudra mettre la main à la pâte et écrire du code VB.

Comment exécuter votre programme ?


Pour exécuter un programme, appuyez sur la touche F5 ou sélectionnez dans la
barre de menu, Run, Start, ou cliquez sur le bouton Start .

Comment arrêter l’exécution d’un programme ?


Pour arrêter l’exécution de votre programme, cliquez sur la petite croix située
en haut à droite du formulaire ou cliquez sur le bouton End .

4.10. Programmation par événements

A la différence de la programmation séquentielle, où les


instructions s’exécutent de manière séquentielle, VB est un langage qui permet
de réaliser de la programmation par événements, c’est- à-dire programmer des
procédures qui s’exécutent quand un événement est déclenché. La plupart du
temps, l’événement est déclenché par l’utilisateur du programme.

Quand on travail dans un environnement multifenêtrés (Windows)


chaque fois, qu’on clique sur la souris, qu’on ouvre ou ferme une fenêtre, qu’on
appuie sur une touche du clavier, on déclenche un événement auquel le
programme utilisé réagit.
[44]

La programmation par événements consiste à programmer ce que le


programme doit faire quand un événement particulier survient.

A chaque objet VB (contrôle, formulaire, etc.) peut être associé une


ou plusieurs procédures événementielles écrites avec le langage de
programmation VB.

Procédures événementielles (Private Sub NomObjet_NomEvénement… End Sub)

Une procédure événementielle n’est rien d’autre qu’une procédure


classique mais qui s’exécute quand un EVENEMENT particulier se produit.

La déclaration de l’événement NomObjet_NomEvénement() se fait


comme suit (voir syntaxe), où NomObjet est le nom de l’objet auquel est
rattaché l’événement NomEvénement. Comme dans une procédure classique,
aucun, un ou plusieurs paramètres et leurs types respectifs peuvent être déclarés
entre parenthèses.

Pour attacher une procédure événementielle à un objet, il suffit de «


double cliquer » sur celui-ci. VB inscrit alors la déclaration de la procédure avec
des paramètres par défaut (ne pas mofifier ces paramètres).

Un ensemble d’événements peut être rattaché à chaque type d’objet.


Ci-dessous quelques exemples d’événements :
Evénement Se produit quand
Click On clique sur le bouton gauche de la souris
DblClick On double clique sur le bouton gauche de la souris
Load L’objet NomObjet est chargé
Change La valeur stockée par l’objet Nomobjet change
MouseDown On clique sur la souris sans relâcher le bouton
MouseUp On a relâché le bouton de la souris
MouseMove On a bougé la souris
KeyDown On a appuyé sur une touche du clavier sans la relâcher
MouseUp On a relâché une touche du clavier
MousePress On a appuyé sur une touche du clavier et on l’a relâché
[45]

A chaque formulaire sera associé un fichier logique portant le nom


‘Nom_Formulaire’, voir figure 10. Celui-ci contiendra le code VB des
différentes procédures relatives aux événements associés au formulaire en
question ainsi qu’aux différents objets qui lui sont rattachés.

Figure 10 : Fenêtre du code VB relative au formulaire Convertisseur

Comment attacher une procédure événementielle « Load » à un formulaire ?

Pour attacher une procédure événementielle à un formulaire, double cliquez sur celui-ci (et
non pas sur un des contrôles qui le composent). VB ouvre alors une fenêtre textuelle et place
le curseur dans le cadre d’une procédure événementielle particulière : Form_Load().

Form_Load()

La procédure de nom Form_Load() s’exécute lors du chargement du formulaire


correspondant, c’est-à-dire avant que le formulaire n’apparaisse à l’écran.
[46]

Pratique.

Placez les deux lignes de codes comme indiqué à la figure 10 (entre les deux
lignes Private Sub Form_Load() et End Sub). Ainsi, avant que le formulaire
n’apparaisse à l’utilisateur, Franc_Belge.Text et Euro.Text seront initialisés à
40.3399 et à "Euro : 1" (voir figure 9).

Exécutez votre programme pour noter l’effet de l’initialisation. Y-a-t il moyen


d’initialiser sans écrire du code ?

Pratique.

a. On désire que, lorsque l’utilisateur clique sur le bouton Convertir (figure


9), une procédure s’exécute et convertisse le montant dans la zone
Franc_Belge et donne le montant équivalent en Euro (dans la zone label).

b. On désire que, lorsque l’utilisateur clique sur le bouton Quitter (figure 9),
une procédure s’exécute et ferme la fenêtre. L’instruction End ferme une
fenêtre.

Exécutez votre programme, introduisez un montant en Franc Belge et appuyez


sur Convertir.

Figure 11 : Fenêtre du code VB relative au formulaire Convertisseur (suite)

Comment Sauver votre travail ?

Sélectionnez dans la barre du menu : File, Save Project as. VB vous demandera de donner
un nom à votre projet et, à chaque formulaire et module, le composant.
[47]

L’intérêt de donner un nom à chaque formulaire et module réside


dans le fait qu’un formulaire ou un module peut être réutilisé dans des projets
différents.

Comment ajouter un nouveau formulaire dans un projet ?

Cliquez avec le bouton droit de la souris sur le mon du Projet se trouvant dans la fenêtre
Projet, sélectionnez dans le menu proposé : Add, Windows form.

Comment ajouter un formulaire existant dans un projet ?

Cliquez avec le bouton droit de la souris sur le mon du Projet se trouvant dans la fenêtre
Projet, sélectionnez dans le menu proposé : Add, Add Existing Items. Sélectionnez le nom du
fichier correspondant au formulaire recherché, puis appuyez sur Open.

Comment retrouvez les différentes fenêtres (ToolBox, Project, Properties) ?

Si ces fenêtres sont fermées vous pouvez toujours les ouvrir en sélectionnant dans le barre du
menu, View (Toolbox, Project Explorer, Properties Windows).

Observation

 Les objets manipulés sont appelés des contrôles (bouton de commande,


boîte de dialogue, zone de texte, zone d'image, etc. )
 L'interface utilisateur créée est multifenêtrée. Une fenêtre est appelée un
formulaire (Form). Un formulaire est lui-même un contrôle.
 Chaque contrôle peut réagir à des événements qui lancent des procédures
(dédiées) codées en VB.
 Des modules généraux de code peuvent porter sur tout le programme. Ces
modules sont réutilisables.

4.11. LES CONTROLES


4.11.1 Concept d’objet

Le concept d’objet

Comme vous l’avez et vous allez encore le constater, le terme


OBJET est souvent cité dans ce texte, et ceci est loin d’être le fruit du hasard. En
effet, VB .NET est un langage orienté objet, c’est-à-dire que toute CHOSE que
vous aurez à manipuler et à utiliser n’est rien d’autre qu’un OBJET indépendant.
[48]

Un objet est défini par un nom et un certain nombre de propriétés. Il est aussi
défini par un ensemble de méthodes (procédures ou fonctions).

Notez bien que les propriétés et les méthodes qui définissent l’objet
ne peuvent être invoquées qu’en spécifiant le nom de celui-ci.

Le concept de propriété d’un objet

Une propriété d’un objet est un attribut ou une caractéristique de


celui-ci. Chaque propriété porte un nom (attribut ou variable) et a une valeur qui
lui est associée. La figure 7 montre une partie des propriétés de l’objet portant le
nom ‘Form1’. Comme propriété d’un objet, on peut citer: nom, forme
graphique, dimension, couleur, structure de données associée, etc.

Pour accéder à la propriété d’un objet avec du code VB, il faut


obligatoirement préciser le nom de l’objet suivi d’un point suivi du nom de la
propriété en question. On peut ainsi distinguer et utiliser les mêmes priorités
appartenant à des objets différents. Pour accéder et modifier les propriétés d’un
objet, on procède comme dans l'exemple suivant :

Pour les objets existants lors du développement, leurs propriétés


peuvent aussi être modifiées à l’aide de la fenêtre de propriétés : Properties, voir
figure 7.

Le concept de méthode d’un objet

Une méthode d’un objet est une fonction ou une procédure


rattachée à l’objet en question. Pour être appelée, comme dans le cas de la
propriété, elle doit être précédée par le nom de l’objet correspondant suivi d’un
point.
[49]

La figure 13 montre l’éditeur des classes (objets) VB. La colonne


de droite présente les méthodes et les propriétés de la classe sélectionnée. La
fenêtre du bas donne une explication succincte de la classe, propriété ou
méthode sélectionnée. Pour ouvrir l’éditeur des classes VB, il suffit de cliquer

sur le bouton Object Browser .

Figure 11 : Editeur des objets VB


4.11.2 Contrôles standards

4.11.2.1 La propriété “Name”

Dans tous les contrôles, la propriété Name permet de référencer le


contrôle correspondant dans du code VB. A l’intérieur d’un même formulaire, la
propriété Name doit être unique. Comme indiqué ci-dessus, Name permettra
aussi d’accéder aux différentes propriétés et d’appeler les différentes méthodes
de l’objet.

Lorsqu’un contrôle est placé sur un formulaire, VB lui affecte un


nom, généré automatiquement, composé du nom du contrôle, suivi d’un chiffre
correspondant au nombre de contrôles de même type déjà intégrés dans le
formulaire.
[50]

4.11.2.2 Label

Le contrôle Label permet d’afficher un texte statique. La propriété


(de type String) chargée de stocker ce texte (une chaîne de caractères) est la
propriété Text. Celui-ci sera affiché lors de l’affichage du formulaire dans lequel
il est placé. L’instruction qui suit modifie le texte correspondant au contrôle
Label de nom Label1.

Exemple

Label1.Text = “l’équivalent en Euro = 15.689,89”

4.11.2.3 TextBox

Le contrôle Textbox permet d’afficher et de saisir un texte au


clavier. La propriété (de type String) chargée de stocker ce texte (une chaîne de
caractères) est la propriété Text. Celui-ci sera affiché lors de l’affichage du
formulaire dans lequel il est placé et modifiable par l’utilisateur. L’instruction
qui suit modifie le texte correspondant au contrôle TextBox de nom Text1.

Exemple

Text1.Text = “Entez votre texte ici”

La figure 9 montre des exemples des contrôles TextBox et Label.

4.11.2.4 RadioButton

Le contrôle RadioButton combine deux fonctionnalités. Il permet


de sélectionner une option présentée par un texte statique (un contrôle Label).
Le contrôle RadioButton, utilisé sur un formulaire en au moins deux instances,
permet de faire une seule sélection parmi les différents choix proposés (parmi
les différents RadioButton affichés).

La propriété du contrôle qui stock l’état de celui-ci est la propriété


Enabled, de type Boolean. La valeur True veut dire que l’option est choisie.
Notez bien que VB se charge de mettre à jour la propriété Enabled une fois
qu’une sélection est faite (mettre True à la propriété Enabled du bouton
sélectionné et False aux autres).

Exemple
OptionButton1.Enabled = True
OptionButton2. Enabled = False
[51]

Pratique.

Dans l’exemple de la figure 14, l’utilisateur peut soit convertir du


FB vers l’euro ou inversement. Les contrôles ont été déclarés comme suit :

Figure 14 : Exemple d’utilisation du contrôle RadioButton

Figure 15 : Code VB de l’exemple de la figure 14 – 1 ère possibilité


[52]

Figure 16 : Code VB de l’exemple de la figure 14 – 2ème possibilité

Dans l’exemple ci-dessus, la conversion se fait de manière


dynamique chaque fois que le montant change (Montant_Change). La procédure
événementielle Montant_Change est aussi appelée comme simple procédure
dans les deux autres procédures événementielles : OptionEuro_Click et
OptionFB_Click.

Nom_objet_Change()

La procédure événementielle de nom Nom_objet_Change() s’exécute quand


l’objet portant le nom Nom_objet change.
[53]

4.11.2.5 CheckButton

Ce contrôle ressemble de très près au contrôle RadioButton. Il


combine aussi deux fonctionnalités. Il permet de sélectionner une option
présentée par un texte statique (un contrôle Label). La différence majeure réside
dans le fait que l’utilisateur peut faire de multiples sélections parmi les différents
contrôles de même type. La propriété du contrôle qui stocke l’état de celui-ci est
la propriété Checked qui prend l’une des deux valeurs suivantes : false = choix
non sélectionné, true = choix sélectionné.

Figure 17 : Exemple d’utilisation du contrôle CheckButton

Dans l’exemple de la figure 17, l’utilisateur peut choisir jusqu’à 4


villes.

Notez que c’est à l’utilisateur de gérer la relation entre les différents


choix en programmant la procédure événementielle Click().

4.11.2.7 GroupBox

Un GroupBox est une fenêtre. C’est un contrôle qui peut être placé
sur un formulaire pour créer un groupe de contrôles. Tout contrôle placé sur le
GroupBox (lui-même placé sur un formulaire) appartiendra à ce groupe.

On a vu dans le cas du contrôle RadioButton qu’une seule option


peut être choisie. Cependant, si on veut présenter à l’utilisateur deux groupes de
choix dans lesquels il peut sélectionner deux choix non exclusifs, un dans le
premier groupe et un dans le second, ceci n’est pas possible.
[54]

Pour résoudre ce problème, il suffit de placer l’un des groupes


d’options dans un GroupBox, l’autre appartiendra au formulaire.

Notez que les GroupBox peuvent être utilisés pour créer un groupe
de contrôles de différents types, TextBox, RadioButton, Label, etc.

La propriété Text permet de donner un titre au GroupBox.

Pratique.

Dans l’exemple de la figure 18, deux GroupBox sont utilisés :


Destination et Moyen de transport. Chaque GroupBox intègre un groupe
d’options. Ainsi, l’utilisateur peut choisir une seule ville et un seul moyen de
transport.

Le code correspondant à ce programme est présenté dans la


figure19. Les contrôles ont été déclarés comme suit :
[55]

4.11.2.9 ListBox

Un ListBox est un contrôle qui permet de proposer une liste de


valeurs parmi lesquelles l’utilisateur ne peut en choisir qu’une seule. La dite
liste est stockée dans la propriété Items. La figure 21 montre un exemple
d’utilisation du contrôle ListBot.

4.11.2.10 ComboBox

Le contrôle ComboBox combine les fonctionnalités des contrôles


TextBox et ListBox. La propriété Text stocke l’élément à chercher, à
sélectionner ou à ajouter et la propriété Items stocke la liste des valeurs
possibles, comme dans le cas du contrôle ListBox. La figure 22 montre un
exemple d’utilisation du contrôle ComboBox.
[56]

4.11.2.11 La propriété Items

La propriété Items se trouve dans plusieurs contrôles (ListBox,


ComboBox, …). Elle peut être remplie lors de la conception dans la fenêtre
Properties comme monter dans la figure 23. Cette liste peut aussi être mise à
jour (ajout, suppression) de manière dynamique durant l’exécution du
programme.

Quelques propriétés et méthodes pour gérer les ListBox ou ComboBox


[57]

La procédure événementielle suivante supprime la ville introduite


par l’utilisateur.

4.11.2.14 L’éditeur de menus

L’éditeur de menus permet de rattacher à un formulaire un menu


comme celui utilisé par exemple dans les applications sous Windows. La figure
28 montre le menu de VB.

Figure 28 : Exemple de menu


[58]

Un menu n’est rien d’autre qu’un ensemble de contrôles


(commandes) qui sont accessibles par une représentation sous forme de menus.
Une commande peut soit ouvrir un sous-menu soit lancer une procédure
événementielle (comme celles vues précédemment).

Pour ouvrir l’éditeur de menu, il suffit de cliquer sur le bouton


Menu Editor .

4.12. Les différents types d’erreurs

Pour un développeur, les erreurs sont une des principales sources de


stress. En fait, nous pouvons classer ces erreurs en trois catégories.

Regardons chacune d’entre elles et les solutions disponibles pour


les traiter.
4.12.1. Les erreurs de syntaxe

Ce type d’erreur se produit au moment de la compilation, lorsqu’un


mot clé du langage est mal orthographié. Très fréquentes avec les premiers
outils de développement où l’éditeur de code et le compilateur étaient deux
entités séparées, elles deviennent de plus en plus rares avec les environnements
tels que Visual Studio. La plupart de ces environnements proposent une
analyse syntaxique au fur et à mesure de la saisie du code.

De ce point de vue, Visual Studio propose de nombreuses


fonctionnalités nous permettant d’éliminer ces erreurs.

Il surveille, par exemple, que chaque instruction If est bien terminée


par un End If.

Si une erreur de syntaxe est détectée, Visual Basic propose les


solutions possibles pour corriger cette erreur. Elles sont affichées en cliquant
sur l’icône associée à l’erreur.
[59]

D’autre part les “fautes d’orthographe” dans les noms de propriétés


ou de méthodes sont facilement éliminées grâce aux fonctionnalités
IntelliSense.

IntelliSense prend en charge les fonctionnalités suivantes :

 L’affichage automatique de la liste des membres disponibles :

 L’affichage de la liste des paramètres à fournir pour l’appel d’une procédu


re ou fonction :
[60]

 L’affichage d’informations ponctuelles sur membres d’une classe :

 Le complément automatique de mots : commencez à saisir un début


de mot puis utilisez la combinaison de touches [Ctrl] [Espace] pour
afficher tout ce que vous pouvez utiliser comme mot, à cet emplacement,
commençant par les caractères déjà saisis. S’il n’y a qu’une seule
possibilité, le mot est ajouté automatiquement, sinon sélectionnez-le
dans la liste et validez avec la touche [Tab].
 L’affichage de la liste des valeurs possibles pour une propriété de type
énumération.

Avec toutes ces fonctionnalités, il est pratiquement impossible de


générer des fautes de syntaxe dans le code.
4.12.2. Les erreurs d’exécution

Ces erreurs apparaissent après la compilation, lorsque vous lancez


l’exécution de votre application. La syntaxe du code est correcte mais
l’environnement de votre application ne permet pas l’exécution d’une
instruction utilisée dans votre application. C’est, par exemple, le cas si
vous essayez d’ouvrir un fichier qui n’existe pas sur le disque de votre
machine. Vous obtiendrez sûrement une boîte de dialogue de ce type.
[61]

Ce type de boîte de dialogue n’est pas très sympathique pour


l’utilisateur !

Heureusement, Visual Basic permet la récupération de ce type


d’erreur et évite ainsi l’affichage de cette inquiétante boîte de dialogue. Deux
techniques sont disponibles pour la gestion de ce type d’erreurs :

 la gestion en ligne ;
 les exceptions.
4.12.3. Les erreurs de logique

Les pires ennemis des développeurs. Tout se compile sans


problème, tout s’exécute sans problème et pourtant “ça ne marche pas” !!!

Il convient, dans ce cas, de revoir la logique de fonctionnement


de l’application. Les outils de débogage nous permettent de suivre le
déroulement de l’application, de placer des points d’arrêt, de visualiser le
contenu des variables, etc.
[62]

CHAPITRE V. EXERCICES VB EN ELECTRICITE


Remarque :

Pour écrire un programme en VB, les étapes suivantes sont à observer ;

 Création de l’interface utilisateur ;


 Définition de propriétés ;
 Ecriture de codes.

Sur la fenêtre de propriété chaque objet possède un nom « Name ».il est d’usage de nommer chaque objet d’une manière claire afin de l’identifier
facilement dans le code .

Les trois étapes précitées doivent être résumées dans un tableau synthèse présenté de la manière suivante :

CREATION DE L’INTERFACE DEFINITION DE PROPRITES ECRITURE DE CODE


OBJET TOUTES LES PROPRITES UTILISEES TOUS LES CODES UTILISES

Nous allons adopter la convention de nomination suivante :

 Pour les zones de textes : txt +nom au choix ;


 Pour les étiquettes : lbl+nom au choix ;
 Pour les boutons commande: cmd+nom au choix
 Pour les feuilles : frm+ nom au choix

Pour sélectionner un objet de la boite à outils , déplacez le curseur de la souris sur l’élément que vous voulez choisir ,une info bulle apparait et
vous indique le nom de l’objet sur le quel vous pointez la souris.
[63]

Exercice 1 :
Enoncé :
Un alternateur triphasé a une tension entre phases de 400 V. Il débite un courant de 10 A avec un facteur de puissance de 0,80 (inductif).
Déterminer les puissances active, réactive et apparente mises en jeu.
P = √3×UI ×cos ϕ = √3×400×10 ×0,80 = 5,54 kW Q = √3×UI ×sin ϕ = √3×400×10 ×0,6 = +4,16 kvar S = √3×UI = √3×400×10 = 6,93 kVA
a) Tableau synthèse
Création de Définition des propriétés Ecriture des codes
l’interface
Objet Name Caption Font Backcolor Tooltiptext
Feuille Frmpuissances Calcul des P, Q, S
Label1 Lbltension Tension  Times New Roman Bleue
 Gras, Taille 12
Label2 Lblcourant Courant débité Idem Idem
Label3 Lblfacteur Facteur de P Idem Idem
Label4 lblP Puissance active Idem Idem
Label5 lblQ Puissance réactive Idem Idem
Label6 lblS Puissance app Idem Idem
Text1 txtTension Idem
Text2 txtCourant Idem
Text3 txtfacteur Idem
Text4 txtP Idem
Text5 txtQ Idem
Text6 txtS Idem
Label7 lblWat Idem Idem
Label8 lblVar Idem Idem
Label9 lblV1 Idem Idem
Label10 Lblfac2 Facteur de Idem
puissance réactive
Text7 Txtfac2
[64]

Création de Définition des propriétés Ecriture des codes


l’interface
Objet Name Caption Font Backcolor Tooltiptext
Command2 Cmdquitter Quitter Cliquez ici pour Cmd
fermer
Déclaration des variables

Dim U As Integer
Dim I As Integer
Dim fac As Single
Dim P As Double
Dim Q As Double
Dim S As Double
Dim fac2 As Single
Command1 Cmdcalculer Calculer Cliquez ici pour U=Val(txttension.text)
calculer I=Val(txt.cournt.text)
Fac=Val(txt.facteur.text)
𝑃 = 𝑆𝑔𝑟3 ∙ (𝑈 ∙ 𝐼) ∙ 𝑓𝑎𝑐
𝑄 = 𝑆𝑔𝑟3 ∙ (𝑈 ∙ 𝐼) ∙ 𝑓𝑎𝑐2
𝑆 = 𝑆𝑔𝑟3 ∙ (𝑈 ∙ 𝐼)
txtP.txt=P
txtQ.txt=Q
txtS.txt=S
[65]

b) Réalisation du programme

Calcul des puissances active, réactive et apparente

Tension P

Courant Q

Facteur de puissance S

Facteur de Puissance
réactive

Calculer Quitter
[66]

EXERCICE 2
Enoncé :
Un moteur de puissance utile 3 kW tourne à 1500 tr/min. Calculer le couple utile en Nm.
Attention : il faut exprimer la vitesse de rotation en radians par seconde. 3000/(1500 ×2π/60) = 19,1 Nm
a) Tableau synthèse
Création de Définition des propriétés Ecriture des codes
l’interface
Objet Name Caption Font Backcolor Tooltiptext
Feuille Frmcouple Calcul du Couple utile Déclaration des variables
Label1 Lblpuissance Puissance  Times New Verte
Lblunité Nm Roman Dim PU As Double
 Italique Dim nr As Integer
 Taille 12 Dim Cm As Double
Label2 lblvitrot Vitesse de rotation Idem Idem
Label3 lblcouple Couple utile Idem Idem
Text1 Txtpuissance
Text2 txtvitrot
Text3 txtcouple
Form_load msgBox(‘’Cliquez sur le bouton Calculer
pour calculer’’)
Command1 Cmdcalculer Calculer PU=InputBox(‘’Entrez la valeur de puissance
utile’’)
nr=InputBox(‘’Entrez la valeur de la vitesse
de rotation’’)
𝑃𝑈
𝐶𝑚 = 2𝜋
𝑛𝑟∙( )
60
Txtcouple.text=Cm
Command2 Cmdfermer Fermer End
[67]

b) Réalisation du programme

Couple moteur N.m

Calculer Fermer
[68]

EXERCICE 3

Enoncé :

Un transformateur monophasé a les caractéristiques suivantes :

- tension primaire nominale : U 1N = 5375 V / 50 Hz - rapport du nombre de spires : N 2/N 1 = 0,044 - résistance de l’enroulement primaire : R 1
= 12 Ω - résistance de l’enroulement secondaire : R 2 = 25 m Ω - inductance de fuite du primaire : L 1 = 50 mH - inductance de fuite du
secondaire : L 2 = 100 µH

1- Calculer la tension à vide au secondaire.

5375 ×0,044 = 236,5 V

2- Calculer la résistance des enroulements ramenée au secondaire R S.

RS = R 2 + R 1 m v² = 0,025 + 12 ×0,044² = 48,2 m Ω

3- Calculer l’inductance de fuite ramenée au secondaire L S. En déduire la réactance de fuite XS.

LS = L 2 + L 1 m v² = 100 ⋅10 -6 + 50 ⋅10 -3⋅0,044² = 197 µH XS = L Sω = 197 ⋅10-6⋅2π⋅50 = 61,8 m Ω

Dans cet exercice, nous allons utiliser une deuxième feuille en tant que boîte de dialogue.
[69]

a) Tableau synthèse

Création de Définition des propriétés Ecriture des codes


l’interface
Objet Name Caption Font Backcolor Tooltiptext
Feuille Frmtransfo Calcul tension à Déclaration des variables
vide ou secondaire
Label1 Lbltension1 Tension primaire  Times New Roman Jaune Dim Up As Integer
 Gras Dim nspires As Integer
 Taille 12 Dim Rp As Byte
Label2 Lblspires Rapport du neutre Idem Idem Dim Rs As Byte
des spires Dim L1 As Single
Label3 Lblrest1 Résistance Idem Idem Dim L2 As Single
primaire Dim U0 As Integer
Label4 Lblrest2 Résistance Idem Idem Dim 𝑟𝑆 As Byte
secondaire Dim 𝑙𝑆 As Single
Label5 lblInd1 Inductance de Idem Idem
fuite primaire
Label6 liblInd2 Inductance de Idem Idem
fuite secondaire
Text1 Txttension Idem
Text2 txtSpires Idem
Text3 Txtrest1 Idem
Text4 Txtrest2 Idem
Text5 txtInd1 Idem
Text6 txtInd2 Idem
Command2 cmdFin End
Command1 cmdAfficher Cliquer ici pour Formcalcul.show
afficher la suite

N.B. : Pour ajouter la deuxième feuille, cliquez du côté droit de la souris sur la fonction de l’explorateur de sujet, puis ajouter une feuille form2.
[70]

Création de Définition des propriétés Ecriture des codes


l’interface
Objet Name Caption Font Backcolor Tooltiptext
Feuille frmcalcul Calcul de ???? et  Times New Roman
Inductance  Gras
 Taille 14
Label1 Lbltension Tension à vide ou  Times New Roman Rouge
secondaire  Gras
 Taille 12
Label2 Lblrest Résistance ramenée au Idem Idem
secondaire
Label3 lblInd Inductance de fuite Idem Idem
ramenée au secondaire
Text1 Txttension
Text2 Txtrest Idem
Text3 txtInd Idem
Command2 cmdRetour Retour
Command1 cmdCalculer Calculer 𝑈𝑃 = Val(txttension.text)
𝑛𝑠𝑝 = Val(txtspires.text)
𝑅𝑃 = Val(txtrest.text)
𝑅𝑠 = Val(txtrest2.text)
𝐿1 = Val(txtind.text)
𝐿2 = Val(txtInd2.text)
𝑈0 = 𝑈𝑃 ∙ 𝑛𝑠𝑝
2
𝑟𝑆 = 𝑅𝑆 + 𝑅𝑃 (𝑛𝑠𝑝 )
2
𝑙𝑆 = 𝐿2 + 𝐿1 (𝑛𝑠𝑝 )
Txttension.text = 𝑈0
Txtrest.text = 𝑟𝑆
txtInd.text = 𝑙𝑆
[71]

REFERENCES

1. Claude CHRISMENT, Geneviève PUJOLLE, Langage de bases de


données : SQL et les évolutions vers l’objet, 2011

2. Marie-Agnès PERALDI-FRATI, Cours Algorithmique et programmation


informatique, DUT INFORMATIQUE, UNS/IUT de Nice côte d’azur,
2013

3. O. Moursli et N. Souchon, VISUAL BASIC .NET : TUTORIAL,


UNIVERSITE CATHOLIQUE DE LOUVAIN, Institut d’Administration
et de Gestion, 2012

4. Thierry GROUSSARD, Visual Basic.NET (VB.NET), Ed. ENI, 2010


[72]

TABLE DES MATIERES


AVANT-PROPOS --------------------------------------------------------------------------------------------------------------- 1
CHAPITRE I. NOTION DE BASE EN ALGORITHMIQUE ----------------------------------------------------------------- 2
1.1. CONCEPTS FONDAMENTAUX EN INFORMATIQUE ---------------------------------------------------------- 2
1.1.1. Algorithme ------------------------------------------------------------------------------------------------------- 2
1.1.1.1. Etapes d’un algorithme --------------------------------------------------------------------------------- 3
1.1.1.2. Structure d’un algorithme------------------------------------------------------------------------------ 3
1.1.1.3. Représentation de l’algorithme----------------------------------------------------------------------- 3
1.1.1.4. Structuration de l’algorithme ------------------------------------------------------------------------- 4
1.1.2. PROGRAMME --------------------------------------------------------------------------------------------------- 4
1.2. PROGRAMMATION -------------------------------------------------------------------------------------------------- 4
1.3. LANGAGE DE PROGRAMMATION -------------------------------------------------------------------------------- 4
1.3.1. Différents langages de programmation------------------------------------------------------------------ 5
CHAPITRE II. LE DEVELOPPEMENT DES LOGICIELS -------------------------------------------------------------------- 8
2.1. Conception de logiciel informatique ---------------------------------------------------------------------------- 8
2.1.1. Etapes du développement de logiciel --------------------------------------------------------------------- 8
CHAPITRE III. LE SYSTEME DE GESTION DES BASES DE DONNEES----------------------------------------------- 10
3.1. Principe de fonctionnement d’une base de données ----------------------------------------------------- 10
3.1.1. Terminologie -------------------------------------------------------------------------------------------------- 10
3.2. Applications de gestion de base de données --------------------------------------------------------------- 12
CHAPITRE IV. PROGRAMMATION ORIENTE-OBJET AVEC VB.NET ----------------------------------------------- 13
4.1. INTRODUCTION ---------------------------------------------------------------------------------------------------- 13
4.2. Configuration nécessaire ---------------------------------------------------------------------------------------- 16
4.3. STRUCTURES DE BASEVISUAL BASIC .NET ------------------------------------------------------------------- 16
4.4. Variable et opérations arithmétiques ------------------------------------------------------------------------ 17
4.4.1 Notion de Variable-------------------------------------------------------------------------------------------- 17
4.4.2 Opérateurs arithmétiques ---------------------------------------------------------------------------------- 19
4.5. Instructions conditionnelles------------------------------------------------------------------------------------- 19
4.5.1. If … Then … Else … End If ----------------------------------------------------------------------------------- 19
4.5.2 IIf (Condition, ValeurSiVrai, ValeurSiFaux) -------------------------------------------------------------- 21
4.5.3. Select case … Case … Case …Else Case … End Select ------------------------------------------------ 22
4.6. Instructions répétitives ------------------------------------------------------------------------------------------- 23
4.6.1 For … To … Next ---------------------------------------------------------------------------------------------- 23
4.6.2 Do While … Loop / Do … Loop While … ------------------------------------------------------------------ 24
4.6.3 Do Until … Loop / Do … Loop Until … -------------------------------------------------------------------- 25
4.6.4. For … Each … Next ------------------------------------------------------------------------------------------- 26
4.6.5 Choix de la structure ----------------------------------------------------------------------------------------- 26
4.7. Tableaux ------------------------------------------------------------------------------------------------------------- 27
4.8. Procédures et Fonctions ----------------------------------------------------------------------------------------- 28
4.8.1. Procédure (Transmission par valeur : ByVal) --------------------------------------------------------- 28
4.8.2. Procédure (Transmission par référence : ByRef) ----------------------------------------------------- 29
[73]

4.8.3 Fonction -------------------------------------------------------------------------------------------------------- 30


4.8.4. Transmission d’un tableau comme argument d’une procédure ou d’une fonction --------- 30
4.8.5 Portée des variables, procédures et fonctions -------------------------------------------------------- 31
4.8.6 Quelques fonctions globales ------------------------------------------------------------------------------- 32
4.8.7 Interruption de séquences --------------------------------------------------------------------------------- 33
4.9. L’ENVIRONNEMENT DE DEVELOPPEMENT VB.NET -------------------------------------------------------- 34
4.9.1. Environnement graphique --------------------------------------------------------------------------------- 35
4.9.1.1 Formulaires (Forms) ------------------------------------------------------------------------------------ 35
4.9.1.2 L’explorateur des solutions --------------------------------------------------------------------------- 38
4.9.1.3 La fenêtre Properties ----------------------------------------------------------------------------------- 39
4.9.1.4 La boîte à outils et les contrôles standards ------------------------------------------------------- 40
4.10. Programmation par événements----------------------------------------------------------------------------- 43
4.11. LES CONTROLES--------------------------------------------------------------------------------------------------- 47
4.11.1 Concept d’objet---------------------------------------------------------------------------------------------- 47
4.11.2 Contrôles standards ---------------------------------------------------------------------------------------- 49
4.11.2.1 La propriété “Name” --------------------------------------------------------------------------------- 49
4.11.2.2 Label ------------------------------------------------------------------------------------------------------ 50
4.11.2.3 TextBox -------------------------------------------------------------------------------------------------- 50
4.11.2.4 RadioButton -------------------------------------------------------------------------------------- 50

4.11.2.5 CheckButton ------------------------------------------------------------------------------------ 53


4.11.2.7 GroupBox ------------------------------------------------------------------------------------------------ 53
4.11.2.9 ListBox ---------------------------------------------------------------------------------------------------- 55
4.11.2.10 ComboBox --------------------------------------------------------------------------------------------- 55
4.11.2.11 La propriété Items ----------------------------------------------------------------------------------- 56
4.11.2.14 L’éditeur de menus ---------------------------------------------------------------------------------- 57
4.12. Les différents types d’erreurs --------------------------------------------------------------------------------- 58
4.12.1. Les erreurs de syntaxe ------------------------------------------------------------------------------------ 58
4.12.2. Les erreurs d’exécution ----------------------------------------------------------------------------------- 60
4.12.3. Les erreurs de logique ------------------------------------------------------------------------------------- 61
CHAPITRE V. EXERCICES VB EN ELECTRICITE ------------------------------------------------------------------------- 62
REFERENCES------------------------------------------------------------------------------------------------------------------ 71
TABLE DES MATIERES ------------------------------------------------------------------------------------------------------ 72

Vous aimerez peut-être aussi