102
Environnement de développement de programmation Ma chaabane@fsegs rnu tn Mohamed Amine CHAÂBANE Ma.chaabane@fsegs.rnu.tn 2012-2013 1 M.A.CHAÂBANE

Environnement de développement de programmation

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Environnement de développement de programmation

Environnement de développement de programmation

Ma chaabane@fsegs rnu tnMohamed Amine CHAÂBANE

[email protected]

2012-2013

1M.A.CHAÂBANE

Page 2: Environnement de développement de programmation

L t h l i NETLa technologie .NET

2M.A.CHAÂBANE

Page 3: Environnement de développement de programmation

I. La Plate-forme .NET

La plate-forme .NET désigne globalement l’architecture technique etp g g qfonctionnelle sur laquelle repose une application développée en codemanagé.

L’ampleur de cette évolution va au-delà de celle que nous avonsconnus lors du passage de Windows 16 bits vers le monde 32 bits.p gCette évolution du passage en 32 bits a nécessitée la réécriture d’uncertain nombre de programme afin d’obtenir de meilleuresperformances et une plus grande stabilité du système.

Contrairement à la précédente évolution, le passage des applicationContrairement à la précédente évolution, le passage des applicationnatif sur la plate-forme .NET n’est pas obligatoire. L’interopérabilitéentre le monde binaire est assurée par le framework .NET.

3M.A.CHAÂBANE

p

Page 4: Environnement de développement de programmation

I. La Plate-forme .NET

En effet, cette plateforme est le socle des applications d’une nouvelleère, plus adaptée aux besoins et aux technologies actuelles. Sacouverture va au-delà du poste client tel que nous le connaissons

j d’h i ’ d à l’i f i d d i ll ’ llaujourd’hui pour s’adresser à l’informatique de demain telle qu’elle sedessine actuellement.

L’informatique actuel doit être « agile » afin de s’adapter auxnouveaux besoins tout en consolidant l’existant. En plus des PC, duportable téléphonique, du PDA, on a besoin d’accéder au donnée viala télévision, un appareil HI-FI, une montre ou autre objet électrique.

Cela n’est qu’un début, car une des tendances actuelles est depermettre à chacun d’accéder à ses données quel que soit l’endroit

4M.A.CHAÂBANE

où il se trouve, mais aussi quel que soit le périphérique qu’il utilise.

Page 5: Environnement de développement de programmation

I. La Plate-forme .NET

La plate-forme .NET est un ensemble de technologie et d’outilsfacilitant de développement d’application et proposé une solutionpour pratiquement tous les types d’application :

applications Windows classiques ;applications Windows classiques ;

applications Web ;

services Windows ;

Services Web ;

Tous ces types d’applications sont réalisables grâce à un élémentessentiel : le Framework .NET. Ce Framework prend en charge, paressentiel : le Framework .NET. Ce Framework prend en charge, parl’intermédiaire de plusieurs couches logicielles superposées,l’intégralité de la vie d’une application ; du développement jusqu'à

5M.A.CHAÂBANE

g pp pp j ql’application.

Page 6: Environnement de développement de programmation

II. Le Framework .NET

1. Définition du Framework:

C’est un espace de travail modulaire. C’est ensemble de bibliothèques,d’outils et de transformations permettant le développement d’applications.

2. Caractéristique du Framework

Le framework gère tous les aspect de l’exécution d’une application.

Il alloue la mémoire pour le stockage des données et desinfrastructure des programmes.

Il autorise ou refuse des droits à l’application.

Il dé t è l’ é tiIl démarre et gère l’exécution

Il gère la ré-allocation de la mémoire pour les ressources qui ne

6M.A.CHAÂBANE

sont plus utilisées.

Page 7: Environnement de développement de programmation

II. Le framework .NET

Le framework doit être hébergé dans un système d’exploitationLe framework doit être hébergé dans un système d exploitationavec lequel va interagir.

Le premier système permettant de l’accueillir est bien sûrwindows mais d’autres versions sont disponibles permettantl’adaptation de la plate-forme .NET à des systèmes tels queLinux ou Unix.

7M.A.CHAÂBANE

Page 8: Environnement de développement de programmation

II. Le Framework .NET

3. L’ architecture du Framework .NET ( 6 couches )

VB C++ C# J Script J# Tous les langagessupportés par le Frameworknet (Managed Code).net (Managed Code)

8M.A.CHAÂBANE

Page 9: Environnement de développement de programmation

II. Le Framework .NET

3. L’ architecture du Framework .NET ( 6 couches )

VB C++ C# J Script J# La CLS est unespécification ouvertedéveloppé par Microsoft qui

Common Language Specification (CLS)développé par Microsoft quidécrit l’environnementd’exécution de la machinevirtuelle basé sur CIL Lavirtuelle basé sur CIL. Laspécification définit unenvironnement qui permetd’utiliser de nombreuxd utiliser de nombreuxlangages de haut niveausur différentes plates-formes sans nécessité deréécrire le code pour desarchitectures spécifiques

9M.A.CHAÂBANE

Page 10: Environnement de développement de programmation

II. Le Framework .NET

3. L’ architecture du Framework .NET ( 6 couches )

VB C++ C# J Script J#

Common Language Specification (CLS)

ASP NET

• interfaces utilisateurspour les applicationswindows.ASP.NET

Web Forms Web Services Windows Forms • Pour la création desapplications web

10M.A.CHAÂBANE

Page 11: Environnement de développement de programmation

II. Le Framework .NET3. L’ architecture du Framework .NET ( 6 couches )

VB C++ C# J Script J#

Common Language Specification (CLS)

ASP NETASP.NETWeb Forms Web Services Windows Forms

Data et XML

• Connexion à une BD(ADO.NET)

• XMLData et XML • XML

11M.A.CHAÂBANE

Page 12: Environnement de développement de programmation

II. Le Framework .NET3. L’ architecture du Framework .NET ( 6 couches )

VB C++ C# J Script J#

Common Language Specification (CLS)

ASP NETASP.NETWeb Forms Web Services Windows Forms

Data et XMLData et XML

Base Class Library (BCL ou FCL)

Un ensemble d’outils(classes) lui permettantd’obtenir une solution rapidepour les problèmesrencontrés lors dudéveloppement.

12M.A.CHAÂBANE

Page 13: Environnement de développement de programmation

II. Le Framework .NET

3. L’ architecture du Framework .NET ( 6 couches )

VB C++ C# J Script J#CLR est le nom choisi pasMicrosoft pour le composantde machine virtuelle du

Common Language Specification (CLS)

ASP NET

framework .Net. Il s’agit del’implémentation parMicrosoft du CLI qui définiASP.NET

Web Forms Web Services Windows Forms

Data et XML

l’environnement d’exécutiondes codes de programmes.

CLR est considéré commeData et XML

Base Class Library (BCL ou FCL)

CLR est considéré commeun agent qui gère enmémoire le code au momentde l’exécution. il fournit les

Common Language Runtime (CLR)

de l exécution. il fournit lesservice essentiels comme lagestion de la mémoire, lagestion des processus et

13M.A.CHAÂBANE

g pl’accès distant.

Page 14: Environnement de développement de programmation

II. Le framework .NET

Les applications Managées : sont écrites par les langages .NET etqui utilisent le framework. Les autres sont dites applications nonmanagées.

Le framework traduit le programme du langage Commun CIL enlangage machine.

Le framework contient deux éléments principaux : le CLR et la BCL.

l b d kLe CLR est la base du Framework .NET. Le run-time peutêtre considéré comme un moteur d’exécution qui gèrel’ é ti d d t é l t l ti d ll’exécution du code et assure également la gestion de lamémoire. Le code pris en charge par le CLR est appelé codemanagé

14M.A.CHAÂBANE

managé.

Page 15: Environnement de développement de programmation

II. Le framework .NET

La bibliothèque de classes est un ensemble de classespouvant être utilisé pour le développement de tout typepouvant être utilisé pour le développement de tout typed’application.

15M.A.CHAÂBANE

Page 16: Environnement de développement de programmation

III. La bibliothèque de classes (BCL)

Le framework .net met à la disposition des développeurs un ensembled’ til l i tt t d’ bt i l ti id à j ité dd’outils lui permettant d’obtenir une solution rapide à une majorité deproblèmes rencontrés lors de la réalisation d’une application.

C til t di ibl f d l à l’i dCes outils sont disponibles sous forme de classes à l’inverse desbibliothèques de code des langages de la génération précédente (Ex:Math h dans le langage C) qui n’était qu’une liste intermédiaire deMath.h dans le langage C), qui n était qu une liste intermédiaire deprocédures ou fonctions.

Cette bibliothèque fournit des classes qui en capsulent un certainCette bibliothèque fournit des classes qui en capsulent un certainnombre de fonctionnalités courantes telles que:

L é t ti hiLa présentation graphiqueLa lecture et l’écriture de fichiersL’i f l BD

16M.A.CHAÂBANE

L’interfaçage avec les BD, etc

Page 17: Environnement de développement de programmation

III. La bibliothèque de classes (BCL)

La bibliothèque de classes est organisée sous forme d’une structurehiérarchisée. L’élément essentiel cette hiérarchisation est l’espacede nom (Namespace).

Il permet le regroupement logique de classes ayant des pointscommuns. Par exemple, on retrouve dans le namespaceSystem.Data toutes classes utilisables pour accéder à une base dedonnées.

Cette bibliothèque de classes est indépendante de tout langage deprogrammation. Elle permet donc le mélange de différents langagesau cours du développements d’une application.

17M.A.CHAÂBANE

Page 18: Environnement de développement de programmation

III. La bibliothèque de classes (BCL)

Les espaces de noms les plus utilisés sont les suivants :

System

C’est l’espace de nom racine pour les types de donnéesp p ypdans le framework .NET. Il contient notamment la définition de laclasse Object, qui est l’ancêtre de tous les types de données duframework .NET.

System.Windows

Il contient l’ensemble des éléments permettant la créationpd’interfaces utilisateurs Windows.

18M.A.CHAÂBANE

Page 19: Environnement de développement de programmation

III. La bibliothèque de classes (BCL)

System.web

il contient toutes les ressources nécessaires pour la créationd’application Web, avec par exemple, les classes de latechnologie ASP.NET ou les classes utilisables pour lacréation de service Web XML.

System.data

Il contient l’ensemble de classes spécialisées dans l’accés auxpbases de données, avec le support de ADO.Net.

System XMLSystem.XML

Le langage XML est devenu omniprésent de cet espace denom contient les classes assurant la manipulation de

19M.A.CHAÂBANE

nom contient les classes assurant la manipulation dedocuments XML.

Page 20: Environnement de développement de programmation

IV. Common Language Runtime (CLR)

1. Le principe de fonctionnement du CLR

Dans les applications windows traditionnelles, le systèmeprend directement en charge l’exécution du code. En effet,prend directement en charge l exécution du code. En effet,celui-ci est généré par le compilateur associé au langage deprogrammation utilisé pour la conception de l’applicationprogrammation utilisé pour la conception de l application.

Le résultat de cette compilation correspond à un fichierbi i t t l d é ifi l ibinaire contenant le code spécifique pour le microprocesseuret le système d’exploitation avec lesquels l’application doitfonctionner.

Aucune compatibilité avec un autre type de

20M.A.CHAÂBANE

microprocesseur ou système d’exploitation n’est possible.

Page 21: Environnement de développement de programmation

IV. Common Language Runtime (CLR)

La solution pour s’affranchir de ces problèmesconsiste à générer à la compilation non pas à la codeconsiste à générer à la compilation, non pas à la codespécifique, mais un code générique, indépendant de touteplateforme logicielle ou matérielleplateforme logicielle ou matérielle.

Ce code est, au moment de l’exécution, confié à unemachine virtuelle qui en assure l’exécution. Ce codes’appelle Microsoft Intermediate Language (MSIL) ouCommon Intermediate Language (CIL).

Lors de l’exécution de l’application ce code est pris enLors de l exécution de l application, ce code est pris encharge par la machine virtuelle qui en assure la traductionen instructions spécifiques pour le microprocesseur de la

21M.A.CHAÂBANE

en instructions spécifiques pour le microprocesseur de lamachine.

Page 22: Environnement de développement de programmation

IV. Common Language Runtime (CLR)

Cette traduction n’est pas effectuée, en bloc dés le débutd l’ li ti i i t f t à dde l’application mais uniquement au fur et à mesure desbesoins.

En effet, pourquoi perdre du temps à traduire du codeMSIL, s’il n’est jamais utilisé par la suite. C’est pour cettej p praison que le compilateur utilisé pour cette traductions’appelle Compilateur Just In Time (JIT).pp p ( )

Les avantages de cette solution sont évidents car pourexécuter une même application sur plusieurs plates formesexécuter une même application sur plusieurs plates-formesmatérielles et ou logicielles, il suffit d’obtenir la machinevirtuelle capable d’effectuer la traduction

22M.A.CHAÂBANE

virtuelle capable d’effectuer la traduction.

Page 23: Environnement de développement de programmation

Cod

eC

# CompilateurC#

ode

.Net

CompilateurMachine virtuelle

Co

VB VB.Net

Code Compilateur011011010100

virtuelle

Cod

eJ#

CompilateurJ#

CodeCIL

pJIT 111000

100101

…..

Scr

ipt

CompilateurJScript

23M.A.CHAÂBANE

J

Page 24: Environnement de développement de programmation

CodeC#

CodeVB Net

CodeJ#

JScript…..C# VB.Net J#

Compilateur Compilateur Compilateur Compilateurp Compilateur p

C L I f t t

CIL

Common Language Infrastructure

CLRCLR

0100110010101110000110

24M.A.CHAÂBANE

10101100101010011000

Page 25: Environnement de développement de programmation

IV. Common Language Runtime (CLR)

2. Les service du CLR

Le CLR fournit quatre services suivants

Common Language Specification (CLS) : Comprends lesg g p ( ) pfonctionnalités communes à tous les langages .NET aveclesquels il doivent fonctionner.

CLS permet d’optimiser et d’assurer l’interopérabilité deslangages.

Interopérabilité des langages désigne la capacité du code àinteragir avec du code écrit avec d’autres langages deprogrammation.

25M.A.CHAÂBANE

Page 26: Environnement de développement de programmation

IV. Common Language Runtime (CLR)Common Type System (CTS) :

Le système de type commun définit la façon dont les types sontdéclarés, utilisées et gérée dans le CLR.

Il définit les règles que les langages doivent respecter, ce quid l’ d b d l d ffpermet de garantir l’interaction des objets écrit dans les différents

langages

C I t di t l (CIL)Common Intermediate language (CIL)

Dans un environnement .NET framework, le code source estilé d CIL lé B t dcompilé en code CIL appelé Bytecode.

Le CIL est portable indépendant d’une plateforme ou d’unprocesseurprocesseur.

26M.A.CHAÂBANE

Page 27: Environnement de développement de programmation

IV. Common Language Runtime (CLR)

Compilateur Just In Time (JIT) :

Ce bytecode est compilé par le compilateur JIT (Juste àCe bytecode est compilé par le compilateur JIT (Juste àTemps) pour obtenir un code immédiatement exécutable parle processeur.p

Durant la compilation, le JIT effectue un grand nombre detâches pour éviter des accès illégales à la mémoiretâches pour éviter des accès illégales à la mémoire.

27M.A.CHAÂBANE

Page 28: Environnement de développement de programmation

IV. Common Language Runtime (CLR)C

ode

C# Compilateur

C# CLS et CTS

ode

.Net

CompilateurMachine virtuelle

Co

VB VB.Net

Code Compilateur011011010100

virtuelle

Cod

eJ#

CompilateurJ#

CodeCIL

pJIT 111000

100101

…..

Scr

ipt

CompilateurJScript

28M.A.CHAÂBANE

J

Page 29: Environnement de développement de programmation

I tit t S é i d’Ad i i t tiInstitut Supérieur d’Administration des Affaires-Sfax

Outils de Programmation de Gestion

Ma chaabane@fsegs rnu tnMohamed Amine CHAÂBANE

[email protected]

2009-2010

1

Page 30: Environnement de développement de programmation

Le Modèle d’objet Le Modèle d objet ActiveX Data Object.NET (ADO.NET)

2

Page 31: Environnement de développement de programmation

I. Introduction

Une fonction principale de toute application de base de donnéesconsiste à se connecter à une source de données et extraire lesdonnées qu’elle contient.

L’accès aux données dans le développement d’application est uneétape fondamentale qui influera ensuite sur la rapidité del’application.

Dans les versions antérieures de VB, il existait plusieurs méthodes, pd’accès en fonction aux données en fonction de la configuration (BDdistantes ou locales, type de fichiers, etc) : DAO, RDO, ADO.

Dans les nouvelles versions de VB, seule la technologie ADO.Netest garder

3

est garder

Page 32: Environnement de développement de programmation

I. Introduction

Principe de ADO.NET

ADO.Net est la nouvelle technologie d’accès aux données fournieen standard dans le framework.Net.

C’est un ensemble de classe, de structure, de types gérant l’accèsà des sources de donnéesà des sources de données.

ADO.Net supporte aussi bien le modèle hiérarchique que lemodèle relationnel ainsi que les données XMLmodèle relationnel ainsi que les données XML.

ADO.Net comportent plusieurs fournisseurs de donnéesl’exécution de commandes et l’extraction de résultat.

ADO.Net permet a différentes sources de données par

4

l’intermédiaire des fournisseurs OLE DB.

Page 33: Environnement de développement de programmation

II. Mode connecté et déconnecté

Lors de l’utilisation de données dans une application deux modessont opposés. (Mode connecté et le mode déconnecté).

I.1 Le mode connectée ode co ec é

On parle de mode connecté lorsque l’application cliente à unè di t t t à l d d é Daccès direct et permanant à la source de données. Dans ce

cas, on doit se connecter à la sources de données avantd’ ff t ’i t ll tâ hd’effectuer n’importe quelle tâche.

Depuis le début de l’informatique, c’était le seul modedisponible. Ce mode présente certains avantages dans sonfonctionnement :

5

Page 34: Environnement de développement de programmation

II. Mode connecté et déconnecté

Facile à gérer : la connexion est réalisée au début del’application puis est coupée à sa fermeture.

L’accès concurrentiel est plus facile à contrôler : commeptous les utilisateurs sont connectés en permanence, il estplus facile de contrôler lequel qui travail sur les données

Les données sont à jour : toujours grâce à la connexionpermanente aux données, il est facilement envisageablep , gde prévenir toutes les applications utilisant les donnéesque des modifications viennent d’y être apportées.q y pp

6

Page 35: Environnement de développement de programmation

II. Mode connecté et déconnecté

Par contre certains inconvénients ont été relevés :l i é d it êt t t i tla connexion réseau doit être constamment maintenue :

en cas d’utilisation de l’application sur un ordinateurportable l’accès au réseau risque de ne pas êtreportable l accès au réseau risque de ne pas êtredisponible en permanence.il a un risque de gaspillage des ressources sur leil y a un risque de gaspillage des ressources sur leserveur : au moment de l’établissement d’une connexionentre une application cliente et un serveur des ressourcesentre une application cliente et un serveur, des ressourcessont allouées sur le serveur pour la gestion de cetteconnexion. Ces ressources restent monopolisées par laconnexion. Ces ressources restent monopolisées par laconnexion même si aucune information ne transite parcette connexion

7

Page 36: Environnement de développement de programmation

II. Mode connecté et déconnecté

En mode connecté nous pouvons effectuer des opérations de :

1 R h h i D t R d i l êt i l i1. Recherche via un DataReader : si la requête renvoi plusieurslignes.

Windows form

BD

Windows form

ConnexionCommandDataReader

2. Recherche sans aucun intermédiaire : si la requête renvoi qu’un résultat.

Windows form

BDConnexionCommand

8

Page 37: Environnement de développement de programmation

II. Mode connecté et déconnecté

3. Manipulation de base de données : pour les requêtes quine retourne pas de résultat (modifier la BD).

Windows form

BDConnexionCommand

9

Page 38: Environnement de développement de programmation

II. Mode connecté et déconnecté

2.2. Mode déconnecté

Le mode déconnecté est une nouveauté de ADO.Net. Ce modepermet de travailler sur des données sans avoir un accès direct etpermanent à la base de données. il est généralement utilisé pourdes applications qui ne disposent pas toujours d’un accès à lasource de données (le cas de certaines applications web). Danscette configuration, le traitement de données se fait en 3 étapes :

Récupération des données à partir de la sourceModification des données en mode déconnectéIntégration des données modifiées à la sources avec, le caséchéant, résolution des conflits (généralement des contraintes

10

d’intégrité).

Page 39: Environnement de développement de programmation

II. Mode connecté et déconnecté

Les avantages du mode déconnecté sont:

Les connexions sont utilisées pendant la plus courte durée possible.De cette façon, un petit nombre de connexion sont disponibles sur unserveur suffisent pour de nombreux utilisateurs.

Un environnement déconnecté améliore l’évolutivité et lesperformances d’une application, en optimisant la disponibilité desconnexions.

L’environnement déconnecté comporte cependant quelquesinconvénients :

les données disponibles dans l’application ne sont pas à jours.

des conflit peuvent parfois survenir lors de la mise à jour des

11

informations dans la base.

Page 40: Environnement de développement de programmation

II. Mode connecté et déconnecté

En mode déconnecté on peut ajouter, modifier, supprimer et delire des données.

Si vous utilisez le mode déconnecté, vous disposerez des objetssuivants:

DataSet : jeu de donnéesDataAdapter : classe permettant la fusion entre un jeu dedonnées et la source.

12

Page 41: Environnement de développement de programmation

II. Mode connecté et déconnecté

Windows form DataSet

BD

Command

ConnexionDataAdapter

13

Page 42: Environnement de développement de programmation

III. Les objet ADO.net

Pour avoir accès aux objets ADO.Net (DataSet, DataTable,…) ilfaut importer l’espace de nom System.Data.

II.1 Objet de connexion. Objet de co ex o

Il permet de définir une connexion à une base de données.

Pour avoir accès aux données il faut:Charger le fournisseur de données (Drivers ou Provider), c’est-à-dire charger les références des drivers (NameSpace),Importer les espaces de nomsEtablir la connexion

14

Page 43: Environnement de développement de programmation

III. Les objet ADO.net

a) Charger le fournisseur de données

il existe plusieurs façon pour accéder a un fournisseur de donnéessous le .NET :

Utilisant ODBC : méthode « universelle » de connexion à labase de données.base de données.Utilisant un provider intégré dans le frameworkUtilisant un provider conçus exclusivement pour une baseUtilisant un provider conçus exclusivement pour une basede données :

soit crée par la société qui a crée la base de donnéessoit crée par la société qui a crée la base de données,ou bien par une autre société.

15

Page 44: Environnement de développement de programmation

III. Les objet ADO.net

Exemple:

Pour les base de données Oracle, on peut utiliser :

1) S i ODP (O l D P id ) l f i d’ è1) Soit .ODP (Oracle Data Provider) le fournisseur d’accès(Provider) des bases de données oracles. Il est Conçu etdéveloppé par cette même société Pour cela il faut :développé par cette même société. Pour cela il faut :

* Ajouter la référence à Oracle.DataAccess.Dll* Et import l’espace de nom (de préférence dans unmodule standard) :

Imports Oracle.DataAccess.Client

16

Page 45: Environnement de développement de programmation

III. Les objet ADO.net

17

Page 46: Environnement de développement de programmation

III. Les objet ADO.net

2) Soit un provider intégré au Framework.net. Pour cela il faut :

* Ajouter la référence à System.Data.OracleClient.dll

* Et import l’espace de nom (de préférence dans un modulestandard):

Imports System.Data.OracleClient

18

Page 47: Environnement de développement de programmation

III. Les objet ADO.net

b) Etablir la connexion

Pour établir une connexion à une base de données :Initialiser l'objet qui va effectuer la connexion à la base Oracle.j qPour cela, vous disposez de l'objet OracleConnection.Définir la propriété chaine de connexion ConnectionString.ConnectionString est la principale propriété associée à un objetde connexion pour se connecter à une BD et pointé sur uneb d d é ti lièbase de données particulière.

ConnectionString = ‘’ Data Source = ; user ID= ; password= ;’’

19

Page 48: Environnement de développement de programmation

III. Les objet ADO.net

Exemple :

Dim conn As New OracleConnection

C C ti St i ‘’D t S O l IDConn.ConnectionString = ‘’DataSource = Oracle ; user ID =Scott ; password = triger’’

Conn.open ()

20

Page 49: Environnement de développement de programmation

III. Les objet ADO.net

II.2 L’objet de Command

Permet d’accéder aux commandes de BD en vue de :Retrouver des donnéesRetrouver des donnéesModifier des donnéesE é té d éd t kéExécutés des procédures stockéesEt envoyer ou récupérer des informations sur lesparamètres.

21

Page 50: Environnement de développement de programmation

III. Les objet ADO.net

Pour cela il faut :

1. Instanciation de l’objet OracleCommand et de ses propriétés.

Dim Cmd As new Oraclecommad

Relier la commande à la connexion

Cmd Connection = conn ‘ variable déjà déclaré de type oracle connectionCmd. Connection = conn variable déjà déclaré de type oracle connection.

2 Définir la propriété CommandType2. Définir la propriété CommandType,

CommandType.StoredProcedure

CommandType.TableDirect

CommandType.Text ‘ Requête SQL

22

yp q Q

cmd.commandType=CommandType.Text

Page 51: Environnement de développement de programmation

III. Les objet ADO.net

3. Définition de la commande :

Requête RSQL à exécuter par exemple

Cmd CommandText= ‘’Select * from emp ‘’Cmd.CommandText= Select from emp

4. Exécution de la commande : pour cela il faut:

* utiliser un DataReader

Ou bien * utiliser un DataAdapterOu bien * utiliser un DataAdapter

Ou bien * exécuter une requête de mise à jourcmd.ExecuteNonQuery() : en cas d’ajout, demodification ou suppression (mais pas de sélection).

23

Page 52: Environnement de développement de programmation

III. Les objet ADO.net

II.2 L’objet DataReader

On peut utiliser le DataReader ADO.Net pour extraire d’une BD unensemble de données en lecture seules. (lire en avant uniquement ; sans

t iè )retour en arrière).

Les résultats retournés sont en mémoire. On ne peut stocker ené i ’ l li à l f i i éd it l h d tèmémoire qu’une seule ligne à la fois ce qui réduit la charge du système.

24

Page 53: Environnement de développement de programmation

III. Les objet ADO.net

Exemple:

Select * From emp; on a une seule ligne qui en mémoire et puis onrécupère les autres lignes une par une par contre le DataSet contientt t l t bl C’ t i l D t R d t l idtoute la table. C’est pourquoi la DataReader est plus rapide.

25

Page 54: Environnement de développement de programmation

III. Les objet ADO.net

Extraction de données à l’aide d’un DataReader (ADO.Net)

Utiliser l’objet OracleDataReader

Dim DReader As New OracleDataReader

Pour extraire des lignes d’une source de données impliquel’utilisation de l’objet Command, puis la création d’un DataReader enappelant :

DReader = Cmd.ExecuteReader()

26

Page 55: Environnement de développement de programmation

III. Les objet ADO.net

Vérifier si DataReader contient des résultats :

If DReader.hasRows Then

On peut utiliser la méthode Read de l’objet DataReaderOn peut utiliser la méthode Read de l objet DataReaderpour obtenir une ligne à partir de la requête.

Read permet d’avancer la lecture des données à l’enregistrement suivant : DReader.Read().

On peut utiliser le DataReader dans un boucle :Do while DReader. Read ( )( )

messageBox.show (DReader.GetString (1))Loop

27

p

Page 56: Environnement de développement de programmation

III. Les objet ADO.net

Pour accéder à chaque colonne de la ligne retournée on peut utiliser

Le nom du champ :Wnomemp = DReader.Item (‘’EMPNOM’’)p ( N )La référence ordinale de la colonne duDataReader : DReader GetString (1)DataReader : DReader. GetString (1).

Fermeture du DataReader

DReader.CloseFermeture de l’objet connexion

Conn.Close

28

Page 57: Environnement de développement de programmation

IV. Applicationpp

Soit la table Voiture :

Voiture (IMMAT, Marque, Type, Puiss, …)

Recherche de Voiture

N°VoitureMarqueType

Puissance

1. Explique la feuille d’interfacep q

2. Expliquer et écrire les procédure d’événementé i

29

nécessaires

Page 58: Environnement de développement de programmation

IV. Application

1/

Utili ti d t ôl L b l l t t à ffi hUtilisation de contrôle Label pour les textes à afficherpar défaut sur la feuille.

Un contrôle texte Box name: WIMMAT pour la saisie dunuméro de la voiture.

Utilisation des contrôles labels par l’affichage de lamarque type puissancemarque, type, puissance.

2/ Ajouter la référence System.Data.OracleClient

Ajouter un module au projet dans lequel on doit :

Importer le namespace d’oracle :

30

Importer le namespace d oracle :System.Data.oracleClient

Page 59: Environnement de développement de programmation

IV. Application

Déclarer les objets nécessaires :Objet OracleConnectionObjet ObjetCommande (pour exécuter uneObjet ObjetCo a de (pou exécute u ecommande SQL par exemple)Oracle DataReader (pour extraire de la BD desOracle DataReader (pour extraire de la BD desdonnées en lecture seulement)

Écrire une procédure de connexion qu’on va l’appelerp q ppen cas de besoin

É i éd d f t d i

31

Écrire une procédure de fermeture de connexion.

Page 60: Environnement de développement de programmation

V. Gestion des exceptions

Il faut mettre les lignes de commande permettant l’accès à la basede données (open, Update, Fill, Close, etc) dans un bloc Try –Catch pour gérer l’exception (une exception est une erreurd’ é ti )d’exécution).

Exception: est une classe de VB.Net qui, si une erreur d’exécutionse produit, va générer un objet en rapport avec le type de l’erreur.

32

Page 61: Environnement de développement de programmation

V. Gestion des exceptions

Exemple:

Try

Conn.open()p ()

Catch

M B h ( d i )MessageBox.show (« erreur de connexion »)

Ou bien

Catch exp As Exception

MessageBox.show ( exp.Message)Message ox.s o ( exp.Message)

End try

33

Page 62: Environnement de développement de programmation

Outils de Programmation de Gestion

Ma chaabane@fsegs rnu tnMohamed Amine CHAÂBANE

[email protected]

2012-2013

1M.A.CHAÂBANE

Page 63: Environnement de développement de programmation

Chapitre III.L’accès aux données en mode

connecté

2M.A.CHAÂBANE

Page 64: Environnement de développement de programmation

I. Extraction des données: à l’aide de d’un DataReader

1. Principe du fonctionnement de DataReader ADO.NETOn utilise le DataReader pour extraire d’une base de données unOn utilise le DataReader pour extraire d une base de données un

ensemble de données:en lecture seule et en avant seulementles résultats sont retournés en mémoireet on ne stocke en mémoire qu’une seule ligne à la q gfois, ce qui réduit la charge du système

3M.A.CHAÂBANE

Page 65: Environnement de développement de programmation

I. Extraction des données: à l’aide de d’un DataReader

•Pour extraire les données de la BD Oracle: Utiliser l’objet OracleDataReaderDi DR d A O l D t R dDim DReader As OracleDataReader

•Pour extraire les lignes de la source de données: Utiliser les objets Command,Connection.

•Pour créer un DataReader: Appeler la méthode ExecuteReader de l’objetCommand

DReader= Cmd.ExecuteReader()

•Vérifier si le DataReader contient des résultats:If DReader.HasRows Then

•On peut utiliser la méthode Read de l’objet DataReader pour obtenir lapremière ligne (enregistrement item) à partir des résultats de la requête oupremière ligne (enregistrement, item) à partir des résultats de la requête oupour passer à la ligne suivante

Dreader.Read()

4M.A.CHAÂBANE

Page 66: Environnement de développement de programmation

I. Extraction des données: à l’aide de d’un DataReader

•On peut utiliser la lecture du DataReader dans une boucle pourparcourir toutes les lignes du résultat:parcourir toutes les lignes du résultat:

Do While DReader.Read()

•Pour accéder à chaque colonne de la ligne retournée, on peututiliser soit :

le nom du champLabel1.Text= DReader.Item("Empnom")

la référence de la colonne du DataReaderLabel1.text= DReader.GetString(1)GetDateTime, GetInt32, GetBoolean, GetChar

•Fermer le DataReader : DReader.close

5M.A.CHAÂBANE

Fermer le DataReader : DReader.close

Page 67: Environnement de développement de programmation

I. Extraction des données: à l’aide de d’un DataReader

2. Schéma logique du traitement:Après la saisie du code à chercher on doit:Après la saisie du code à chercher on doit:

• Etablir la connexionE i êt SQL SELECT• Ecrire une requête SQL SELECT

• Relier la requête à l’objet command• Exécuter la command utilisation l’objet (DataReader)• Vérifier si le code existe dans le DataReader

Si existe: afficher l’enregistrementSinon: afficher message « erreur »Fin si: Fermer la connexion

6M.A.CHAÂBANE

Page 68: Environnement de développement de programmation

II. Mise à jour des données (en mode connecté)

1. PrincipeO i l di t t l b t dOn manipule directement la base sans retour derésultats.O tili l t d bj t C d t C tiOn utilise seulement des objets Command et Connection(sans DataReader):Pour effectuer une mise à jour des données: On exécutePour effectuer une mise à jour des données: On exécutela requête directement, requête SQL de mise à jour(insert delete update)(insert, delete, update)

Cmd.ExecuteNonQuery()

7M.A.CHAÂBANE

Page 69: Environnement de développement de programmation

II. Mise à jour des données (en mode connecté)

2. Ajout d’un enregistrementS hé l i d t it t A è l i i dSchéma logique de traitement: Après la saisie del’enregistrement à ajouter on doit:

• Etablir la connexion• Ecrire une requête SQL SELECT• Relier la requête à l’objet command• Exécuter la command utilisation l’objet

(DataReader)

8M.A.CHAÂBANE

Page 70: Environnement de développement de programmation

II. Mise à jour des données (en mode connecté)

Vérifier si le code existe dans le dataReader :Si i l \\ i t t i tSi oui alors \\ enregistrement existe

afficher un message « erreur »SinonSinon

écrire la requête SQL InsertRelier la requête à l’objet commandRelier la requête à l objet commandExécuter la commandeCmd.ExecuteNonQuery()Cmd.ExecuteNonQuery()

Fin siFermer la connexionFin

9M.A.CHAÂBANE

Page 71: Environnement de développement de programmation

II. Mise à jour des données (en mode connecté)

Soit la table Locataire : Type : TextBox

Name: wNLoc

Locataire (NLOC, NOMLOC, ADRLOC)Ajout d’un Locataire

Text: ‘’ ‘’

Type : TextBox

Name: wNomLoc

Numéro locataireNom locataireAd l t i

Text: ‘’ ‘’

Type : TextBox

Name: wadrLoc

Type : Label

Adresse locataireEnregistrer

Name: wadrLoc

Text: ‘’ ‘’

Type : Bouton

Name: btnenregistrerName: btnenregistrer

Text: enregistrer

1. Expliquer la feuille d’interface.

2 Expliquer et écrire les procédure d’événement

10M.A.CHAÂBANE

2. Expliquer et écrire les procédure d événementnécessaires.

Page 72: Environnement de développement de programmation

III. Mise à jour des données (en mode connecté)

3. Modification d’un enregistrement S hé l i d t it t A è l i i d dSchéma logique de traitement: Après la saisie du code

à modifier on doit:• Etablir la connexion• Etablir la connexion • Ecrire une requête SQL SELECT

Relier la req ête si l’objet command• Relier la requête si l’objet command • Exécuter la command utilisation l’objet

(DataReader)(DataReader)

11M.A.CHAÂBANE

Page 73: Environnement de développement de programmation

II. Mise à jour des données (en mode connecté)

Vérifier si le code existe dans le dataReader :Si i l \\ i t t i tSi oui alors \\ enregistrement existe

Afficher l’enregistrement à modifierSaisir les nouvelles valeursSaisir les nouvelles valeursEcrire la requête SQL UPDATERelier la requête à l’objet commandRelier la requête à l objet commandExécuter la commandeCmd.ExecuteNonQuery()y()

Sinon Afficher un message « erreur »

Fin siFermer la connexion

12M.A.CHAÂBANE

Fin

Page 74: Environnement de développement de programmation

III. Mise à jour des données (en mode connecté)

3. Suppression d’un enregistrement S hé l i d t it t A è l i i d dSchéma logique de traitement: Après la saisie du code

à supprimer on doit:• Etablir la connexion• Etablir la connexion • Ecrire une requête SQL SELECT

Relier la req ête si l’objet command• Relier la requête si l’objet command • Exécuter la command utilisation l’objet

(DataReader)(DataReader)

13M.A.CHAÂBANE

Page 75: Environnement de développement de programmation

II. Mise à jour des données (en mode connecté)

Vérifier si le code existe dans le dataReader :Si i l \\ i t t i tSi oui alors \\ enregistrement existe

Afficher l’enregistrement à supprimerEcrire la requête SQL DELETEEcrire la requête SQL DELETERelier la requête à l’objet commandExécuter la commandeExécuter la commandeCmd.ExecuteNonQuery()

SinonSinon Afficher un message « erreur »

Fin siFermer la connexionFin

14M.A.CHAÂBANE

Page 76: Environnement de développement de programmation

III. Application

Suppression d’un Locataire

Numéro locataireNom locataireAdresse locataire

Expliquer et écrire les procédure d’événement nécessaires

Supprimer

15M.A.CHAÂBANE

Page 77: Environnement de développement de programmation

III. Application

Procédure 1

Après la saisie du code du locataire à supprimer la procédure sera par la

pp

Après la saisie du code du locataire à supprimer la procédure sera par lasuite exécutée donc le type de la procédure est keypress (lorsque l’utilisateurtape entrer) ou lostfocus (lorsque l’utilisateur déplace le curseur).

Rechercher dans la table Locataire à l’aide d’une requête SQL (select) et unDataReader.

Si l l t i i t l ffi h d é t ti l b t S iSi le locataire existe alors afficher ses données et activer le bouton Supprimerau niveau de l’affichage.

Sinon afficher un message d’erreurSinon afficher un message d erreur

Procédure 2

Procédure de type click sur le bouton SupprimerProcédure de type click sur le bouton Supprimer

Ecrire une requête SQL DELETE

Exécuter la requête en utilisant l’objet Command

16M.A.CHAÂBANE

Exécuter la requête en utilisant l objet Command

Page 78: Environnement de développement de programmation

III. Application

Imports System.data.oracleclient

dim RSQL As String

di d A O l D t R ddim dr As OracleDataReader

Private Sub WNLOC_keypress (sender, e) as WNLOC.Keypress

[call] ouvrirconnexion()

RSQL = ‘’ Select * from Locataire where NLOC = ‘’ & Cint (WNLOC text) & ‘’ ‘’RSQL = Select * from Locataire where NLOC = & Cint (WNLOC.text) &

Cmd.commondtype=Commandtype.text

Cmd.commodtext=RSQL

dr = cmd executeReader()dr = cmd.executeReader()

if dr.HasRows () then

dr.read

WNOMLOC.text = dr.item (‘’NOMLOC’’)O OC te t d te ( O OC )

WADRLOC.text= dr.item (ADRLOC)

BtnSupprimer.Enable = True

Else

MessageBox.Show (‘’ Locataire n’existe pas ‘’)

End if

[call] Fermerconnexion()

17M.A.CHAÂBANE

End Sub1

Page 79: Environnement de développement de programmation

Outils de Programmation de Gestion

Ma chaabane@fsegs rnu tnMohamed Amine CHAÂBANE

[email protected]

2012-2013

1M.A.CHAÂBANE

Page 80: Environnement de développement de programmation

Chapitre III.L’accès aux données en mode

déconnecté

2M.A.CHAÂBANE

Page 81: Environnement de développement de programmation

I. Principe

1. Principe du fonctionnement de DataSetU d t t t à é h d d é t dUn adaptateur sert à échanger des données entre une source de données et un groupe de données (DataSet). Il consiste à lire des données de la base pour les placer dans un DataSet, puis à écrire les modifications du DataSet dans la baseles modifications du DataSet dans la base.

Déclarer un objet DataAdapterPrivate DAdapter As OracleDataAdapterPrivate DAdapter As OracleDataAdapter

Instancier un objet DataAdapterDAdapter = New OracleDataAdapterDAdapter New OracleDataAdapter

3M.A.CHAÂBANE

Page 82: Environnement de développement de programmation

I. PrincipeChaque adaptateur échange des données entre une table de la

source de données et un seul objet (DataTable) du groupe desource de données et un seul objet (DataTable) du groupe deDonnées (DataSet)

Si le DataSet (groupe de données) contient plusieurs tables il fautSi le DataSet (groupe de données) contient plusieurs tables il fautcréer plusieurs adaptateurs.

L D t S t t é t ti é i d d éLe DataSet est une représentation en mémoire des données. oncharge le DataSet à partir de la BD grâce à un adaptateur. Unefois chargé on peut travailler en mode déconnecterfois chargé on peut travailler en mode déconnecter.

Pour effectuer les modifications :O difi l D SOn modifie le DataSetPuis on met à jour le base de données à partir du DataSet.

4M.A.CHAÂBANE

Page 83: Environnement de développement de programmation

I. Principe

BD

Connexion

DataAdapterCommandBuilder Command

U d t

DataSet

Update

Insert Update Delete

Select

p

5M.A.CHAÂBANE

Page 84: Environnement de développement de programmation

I. Principe

2. Les principales classes d’un DataSet

Dans un mode non connecté la liaison avec le serveur dedonnées n’est pas permanente. Il faut donc conserver localementles données sur lesquelles ont souhaite travailler. L’idée estrecréer, à l’aide de différentes classes, une organisation similaireà ll d’ b d d é L i i l l tà celle d’une base de données. Les principales classes sont :

• Le DataSet est le conteneur de plus haut niveau, il joue lemême rôle que la base de données. il est organisé comme unebase de données en mémoire qui possède :

une propriété Tables qui contient des DataTable

6M.A.CHAÂBANE

Page 85: Environnement de développement de programmation

I. Principe

• Chaque DataTable comme son l’indique, c’est l’équivalentd’ t bl d b d d é il ti td’une table de base de données. il contient

• une propriété Columns qui contient les DataColumn.• et une propriété Rows qui contient des DataRow.

• DataColumn remplace un champ (colonne) d’une table;

• DataRow joue le rôle d’un enregistrement (ligne)

• UniqueConstraint c’est l’équivalent de la clé primaire d’une• UniqueConstraint c est l équivalent de la clé primaire d unetable.

• ForeignKeyConstraint c’est l’équivalent de la clé étrangère• ForeignKeyConstraint c est l équivalent de la clé étrangère.

• DataRelation représenta un lien parent/enfant entre deuxt bl

7M.A.CHAÂBANE

tables.

Page 86: Environnement de développement de programmation

I. Principe

D t S tDataSet

DataTable DataTableDataTable DataTableDataRaw

DataColumnUniqueConstraint

ForeignKeyConstraintDataRelation

8M.A.CHAÂBANE

Page 87: Environnement de développement de programmation

II. Consultation des données

1. Déclaration et utilisation des objetsDéclarer un objet DataAdapterDéclarer un objet DataAdapter

Private DAdapter As OracleDataAdapter

I t i ti d l’ bj t D t Ad tInstanciation de l’objet DataAdapter :DAdapter = new OracleDataAdapte (cmd)C d t bj t d t O l C dCmd est un objet de type OracleCommand

Déclarer un objet DataSetPrivate DSEmploye As new DataSet()

Charger le DataSet à l’aide de la propriété FILL del’objet du DataAdapter

DAdapter.fill (DSEmploye, ‘’ Employer’’)

9M.A.CHAÂBANE

Page 88: Environnement de développement de programmation

II. Consultation des données

2. Visualiser un enregistrementVérifier si la table du DataSet n’est pas videVérifier si la table du DataSet n est pas vide

If DSEmploye.Tables (‘’Employe’’).Rows.count = 0 thenMessageBox (‘’ TableVide’’)

Afficher un enregistrement : par exemple dans des contrôle Label ouTextBox :

WN E T t DSE l T bl (‘’E l ’’) R (i) ItWNumEmp.Text = DSEmploye. Tables (‘’Employe’’).Rows(i).Item(NomEmp)

Afficher le DataSet dans un contrôle (DataGridView) :( )• Remplissage automatique : Relier la grille (DGView) à une source dedonnées DataSet (DSEmploye) :

DGView.DataSource = DSEmploye.Tables (‘’Employe’’)• Remplir la grille (DGView) à partir d’une source de données (DataSet):Par programmation.

10M.A.CHAÂBANE

Par programmation.

Page 89: Environnement de développement de programmation

II. Consultation des données

Afficher la ligne sélectionnée : Sur click dans le DataGridViewP i t S b DGVi li k ( d )Private Sub DGView_click (sender, e)

Dim NLigne, NColonne As integerDim Valeur As StringDim Valeur As StringNLigne = DGView. CurrentCellAdress.XNColone= DGView. CurrentCellAdress.XNValeur = DGView. CurrentCell.Value

End sub

Afficher le DataSet dans un contrôle (ListBox) :• Ajouter un élément à la liste :

Li t1 It Add ( l t)List1.Items.Add (element)• Afficher la ligne sélectionnée : Sur click dans la liste:

Variable = List1 SelectedItem

11M.A.CHAÂBANE

Variable List1.SelectedItem

Page 90: Environnement de développement de programmation

II. Consultation des données

Remplir une ListBox à partir du DataSet ligne par ligneDi Li A D t RDim Ligne As DataRowFor Each Ligne in DSEmploye.Tables (‘’ Employe‘’).Rows

List1 Items Add (Ligne Item(‘’EmpNo’’) & ‘’ ‘’ & ligne ItemList1.Items.Add (Ligne.Item( EmpNo ) & & ligne.Item (‘’EmpNo’’))

NextNextApplication

12M.A.CHAÂBANE

Page 91: Environnement de développement de programmation

III. Mise à jour des données en mode déconnecté

Il faut utiliser l’objet CommandBuilder, de plus des autres bj t i t d h l l d d é d lobjets, qui permet de changer les valeurs des données dans le

DataAdapter.déclarer un objet de type OracleCommandBuilderdéclarer un objet de type OracleCommandBuilder

Public CmdBuilder As OracleCommandBuilderrelier l’objet CommandBuilder à l’objet DataAdapter

CmdBuilder = New OracleCommandBuilder(DAdapter)DAdapter : est un objet de type OracleDataAdapter

13M.A.CHAÂBANE

Page 92: Environnement de développement de programmation

III. Mise à jour des données en mode déconnecté

Première méthodeAjouter, modifier ou supprimer directement dans le contrôle DataGridViewP i d l i à jPuis sauvegarder la mise à jour :

DAdapter. Update (DSEmploye, ‘’Employe’’)

Vider le DataSet et le recharger de nouveau :Vider le DataSet et le recharger de nouveau :DSEmploye.clear ()DAdapter.Fill (DSEmploye, ‘’ Employe’’)( y y )

14M.A.CHAÂBANE

Page 93: Environnement de développement de programmation

III. Mise à jour des données en mode déconnecté

Deuxième méthodea- Modifier un enregistrementa- Modifier un enregistrement

Modifier les valeurs des champs en récupérant le contenu des TextBox

DSEmploye.Tables (‘’employe’’).Rows(i).Items(‘’AdrEmp’’) = WAdr.text

Puis sauvegarder la mise à jour :DAdapter. Update (DSEmploye, ‘’Employe’’)

Vider le DataSet et le recharger de nouveau :DSEmploye.clear ()DAdapter.Fill (DSEmploye, ‘’ Employe’’)

15M.A.CHAÂBANE

Page 94: Environnement de développement de programmation

III. Mise à jour des données en mode déconnecté

b- Ajouter un enregistrementDéclarer un objet DataRow (ligne)Déclarer un objet DataRow (ligne)

Public DrEmploye As DataRowAjouter une nouvelle ligne au DataSet

DrEmploye = DSEmploye.Tables (‘’Employe’’).NewRow()DSEmploye = Tables (‘’Employe’’). Rows.Add (DrEmploye)

Modifier les valeurs des champs en récupérant le contenu du textBoxp pDrEmploye (‘’ Nom’’) = WNom.textDrEmploye (‘’ Prenom’’) = WPrenom.text

Sauvegarder la mise à jour :Sauvegarder la mise à jour :DAdapter. Update (DSEmploye, ‘’Employe’’)

Vider le DataSet et le recharger de nouveau :DSEmploye.clear ()DAdapter.Fill (DSEmploye, ‘’ Employe’’)

16M.A.CHAÂBANE

Page 95: Environnement de développement de programmation

III. Mise à jour des données en mode déconnecté

C- Effacer un enregistrement

S i l li é i t d l i à jSupprimer la ligne numéro i et sauvegarder la mise à jourDSEmploye.Tables (‘’Employe’’).Rows(i).Delete ()DAdapter Update (DSEmploye ‘’Employe’’)DAdapter. Update (DSEmploye, Employe )

Vider le DataSet et le recharger de nouveau :DSEmploye.clear ()p y ()DAdapter.Fill (DSEmploye, ‘’ Employe’’)

17M.A.CHAÂBANE

Page 96: Environnement de développement de programmation

Outils de Programmation de Gestion

Ma chaabane@fsegs rnu tnMohamed Amine CHAÂBANE

[email protected]

2012-2013

1M.A.CHAÂBANE

Page 97: Environnement de développement de programmation

Chapitre V.Utilisation d’autres contrôles

2M.A.CHAÂBANE

Page 98: Environnement de développement de programmation

I. Le contrôle TIMERLe contrôle Timer permet de programmer des traitements en

arrière plan; il permet aussi formuler des réponses sur la base desl l’h l

p p pvaleurs envoyées par l’horloge système.

On peut placé plusieurs contrôle Timer sur une feuille VB.l t ôl Ti it l’é é t Ti Ti k t é dle contrôle Timer reçoit l’événement Timer « Tick » et répond en

fonction des propriétés définis

3M.A.CHAÂBANE

Page 99: Environnement de développement de programmation

I. Le contrôle TIMER

Les propriétés du contrôle Timer

Name : c’est le nom du contrôle

Interval : intervalle en milliseconde spécifier la fréquence àInterval : intervalle en milliseconde spécifier la fréquence àlaquelle le contrôle Timer répondra aux événements.

Exemple Interval=1000 c’est-à-dire Timer sera exécutétoutes les millisecondes soit une foit par secondtoutes les millisecondes, soit une foit par second

Enabled :Timer enabled=True c’est à dire exécuter l’événementTimer.enabled=True c est-à-dire exécuter l événementTimerTimer enabled= False c’est-à-dire exécuter l’événement

4M.A.CHAÂBANE

Timer.enabled False c est-à-dire exécuter l événementTimer

Page 100: Environnement de développement de programmation

I. Le contrôle TIMER

L’événement Timer: TickC ti t l d à é t à h f i ’é lContient le code à exécuter à chaque fois que s’écoulel’intervalle de temps spécicfié dans la propriété Interval.ApplicationApplicationAfficher sur la feuille une horloge affichant l’heure système quidoit être actualiser à chaque seconde et un message d’erreurgqui clignote.

14:55:10

LabelName= horlogTimer

Name= timer1

Label

Visible= FalseInterval= 1000Enabled= True

Warning Name= MessTimer

Name= timer2Visible= False

5M.A.CHAÂBANE

Interval= 10Enabled= false

Page 101: Environnement de développement de programmation

I. Le contrôle TIMER

Private sub Timer1_Tick (sender, e)‘ l’événement sera exécuté chaque secondeholog.text=TimeOfDay

End SubPrivate sub Timer2_Tick (sender, e)

‘afficher un message en clignotantMess.Visible = Not (Label1.Visible)

End sub

6M.A.CHAÂBANE

Page 102: Environnement de développement de programmation

II. Le contrôle Animation

Le contrôle Animation permet de diffuser une séquence vidéo(fichier d’extension *.avi) dans une feuiller VB.( )

Ajouter le contrôle Animation à laa boite à outils.Outils/Ajouter élémentComposant / Microsoft Animation Control.

7M.A.CHAÂBANE