Introduction à l'utilisation du logiciel DELPHI

Chapitre 1 : Introduction à Delphi7 ..4
Leçon1 : Delphi7, généralités .5
Leçon2 : Les premiers pas 9 TP1 : Jeu de couleurs .9 TP2 : Calcul de la moyenne .11 TP3 : Calcul du factoriel 12 TP4 : Chargement d’une image .13
Leçon3 : Avancer plus .14
TP1 : Interface des couleurs .14 TP2 : Lancement d’un exécutable à partir d’une fiche Delphi .16 TP3 : Les commentaires 16
TP4 : La manipulation de l’interface par clavier ..17
Leçon4 : Messages, Multimedia et autres ..18
TP1 : Les messages de dialogue 18 TP2 : Les fichiers multipedia ..19 TP3 : Les animations ..19
TP4 : Les boucles de temps .20
TP5 : Dessiner une fonction .20
TP6 : Barre de progression ..20
Leçon5 : Menu principal et barres d’outils ..21
TP1 : Le menu principal 21
TP2 : Les barres d’outils 22
Leçon6 : La programation des bases de données 23
TP1 : Création d’un alias de base de données .23 TP2 : Création d’une table 24 TP3 : Connexion et affichage d’une base de données dans une fiche Delphi 25 TP4 : Les champs calculés et les boucles dans une BD (exemple : facture) ..25 TP5 : Les champs calculés et les boucles dans une BD (exemple : Bulletin) 28
TP6 : Le DBNavigateur .29
Leçon7 : Les index secondaires et leurs utilisation 30
TP1 : La création des index secondaires 30 TP2 : Le trie d’une table ..31
TP3 : le filtrage d’une table 32 TP4 : la recherche simple dans une table .33 TP5 : les relations maitre-detail 33
Leçon8 : Introduction aux requetes SQL ..35

Présentation generale .35 TP1 : Les requetes SQL les plus utilisées 36
TP2 : La consultation par des requetes parametrées 38
TP3 : Les graphes ..39
Leçon9 : Les états d’impression 40
Introduction .40 TP1 : imprimer les enregistrements d’une table (liste des produits) ..41
Leçon10 : Delphi est un RAD ..43
TP1 : une fiche simple d’impression d’une table .43
TP2 : Une fiche simple de connexion et d’affichage et d’impression d’une table .44 TP3 : Une fiche maitre-detail entre deux tables 45
TP4 : TP Exemplaire .45 Chapitre 2 : Logiciel gestion commerciale ..46
Préparation du Logiciel .47
Fiche Menu .48 Fiche Produit 50 Fiche Client .52
Fiche Fournisseur .54
Fiche Facture Achat 56
Fiche Facture Vente 61 Fiche Consultation Achats ..67
Fiche Consultation Ventes ..69 Fiche Statistiques Reglement ..71
Fiche Mot de Passe .72 Fiche Protection .73 Fiche Archivage 74
Fiche Inventaire 75 Fiche Cloture ..77
Fiche À propos ..79
Chapitre 3 : Logiciel gestion scolarité 80
Préparation du Logiciel .81

Fiche Menu .82
Fiche Etudiant .83
Fiche Matiére .87 Fiche Professeur 90
Fiche Spécialité .92 Fiche Bulletin .94 Fiche Consultation Etudiant 99 Fiche Statistiques des Étudiants .100 Fiche Impression .103
Fiche Mot de Passe ..105 Fiche Protection ..106
Fiche Archivage .107 Fiche Cloture 108 Fiche À propos 109
Chapitre 4 : Trucs & astuces ..111
Créer une installation 112 Conception des fichiers help pour les logiciels 114
Le skin Data .115
Annexe 117
Les composants de base (Propriétés et venements) ..118
1- INTRODUCTION
Delphi est un environnement de programmation visuel orienté objet permettant de développer des applications sous Windows. Il représente la suite logique de la famille turbo Pascal avec ses nombreuses versions (précisément le pascal objet). Delphi est un outil moderne, puissant, faisant appel à une conception visuelle des applications, à la programmation orientée objet, à une bibliothèque de composants très riche (la VCL: Visual Components Library), aux fichiers DLL (Dynamic Link Library) et API (Application Programming Interface) de Windows; Delphi se classe comme l’un des meilleurs environnement de développement rapide des applications (RAD) dans le monde informatique.
Delphi, c’est aussi un produit qui évolue avec le temps. Chaque nouvelle version possède son lot de nouveautés. Voici les versions successives :
- Delphi 1 est le premier environnement pascal RAD sous Windows 3.11 (visuel).
- Delphi 2 marque le passage au mode 32 bits avec Windows 95.
- Delphi 3 supporte déjà les Active X, ainsi que l’aide à la saisie dynamique.
- Delphi 4 propose les tableaux dynamiques.
- Delphi 5 ouvre l’accès natif aux bases de données ADO et interbase.
- Delphi 6 introduit dbExpress et les composants portables de la CLX.

Et en fin, Delphi 7, Delphi 8 et récemment Delphi 2006 et 2007 qui sont sans doute les versions les plus enrichies de toute l’histoire du produit.
2- ENVIRONNEMENT DELPHI Démarrage de Delphi
Vous pouvez démarrer Delphi de plusieurs façons :
- • Double-cliquer sur l’icône Delphi (si vous avez créé un raccourci).
- • Choisir Programmes Borland Delphi 7 Delphi 7 dans le menu Démarrer de Windows.
- • Choisir Exécuter dans le menu Démarrer de Windows, puis entrer Delphi32.
- • Double-cliquer sur dans le répertoire Delphi\Bin.
L’EDI
Lorsque vous démarrez Delphi pour la première fois, vous voyez apparaître quelques-uns des principaux outils proposés dans l’EDI (environnement de développement intégré). Dans Delphi, l’EDI comprend des barres d’outils, des menus, la palette de composants, l’inspecteur d’objets, l’arborescence d’objets, l’éditeur de code, l’explorateur de code, le gestionnaire de projet et bien d’autres outils.
La vue arborescente de l’objet La barre des menus et les barres d’outils affiche une représentation permettent d’accéder à tout un ensemble de La palette de composants contient hiérarchique des relations parent fonctions qui vous aident à écrire vos applications. des composants (visuels ou non) gestionnaire d’événements de l’objet
votre unité et vous permet de sélectionné. On affiche l’inspecteur
naviguer rapidement.
d’objet par F11 ou ENTREE
Les barres d’outils de Delphi permettent un accès rapide aux opérations et aux commandes les plus utilisées. La plupart des opérations accessibles dans les barres d’outils se retrouvent dans les menus déroulants.
De nombreuses opérations possèdent des équivalents clavier ainsi que des boutons dans la barre d’outils. Lorsqu’un raccourci clavier est disponible, il est toujours inscrit à côté de la commande dans le menu déroulant.
L’inspecteur d’objet
Chaque composant possède des attributs spécifiques (propriétés, événements et méthodes) vous permettant de contrôler votre application. Utilisez l’inspecteur d’objets pour définir des propriétés de conception, créer des gestionnaires d’événements, filtrer la visibilité des propriétés et des événements, ce qui établira le lien entre l’apparence visuelle de votre application et le code qui la fait s’exécuter.
Vous pouvez changer la manière dont un composant s’affiche (propriétés) et se comporte (événements) dans votre application en utilisant l’inspecteur d’objets. Lorsqu’un composant est sélectionné sur la fiche, ses propriétés et ses événements sont affichés dans l’inspecteur d’objets.
3- NOTIONS DE PROJET DELPHI ET DE SES FICHIERS
Un projet est l'état non compilé d'une application (Application = Logiciel). Chaque projet compilé devient une application. Un projet se compose d'un certain nombre de fichiers. Une sage habitude est de consacrer complètement un répertoire (dossier) à chaque application qu'on souhaite programmer (chaque projet). Ce répertoire contiendra tous les fichiers constituant le projet (le nombre de fichiers augmentera au fur et à mesure que le projet s'étoffera).
Un projet non compilé (c'est-à-dire avant sa transformation en logiciel), contient ces fenêtres (à l'état non compilées également) : les fiches, c’est la partie visuelle d’une application. Cette fiche, lors de la compilation du projet en application, sera transformée en fenêtre.
A chaque fiche est adjointe une (et une seule) unité, c'est-à-dire un texte écrit en langage Pascal, qui contiendra tout ce qui se rapporte à cette fiche : ce qu'elle contient (boutons, menus, …), ce qui doit se passer dans certaines situations (lorsqu'on clique sur un bouton par exemple), et encore bien d'autres choses.
Chaque fiche est stockée dans un fichier comportant l'extension 'DFM' (exemple : ). Chaque unité est stockée dans un fichier comportant l'extension 'PAS' (exemple : ).
La fiche et son unité associée portent le même nom (mais pas la même extension) (Delphi ne demande ce nom d’enregistrement qu'une seule fois et l'utilise automatiquement pour l'unité et la fiche, ainsi vous n'avez aucun risque de vous tromper). Par exemple, si une fiche est stockée dans le fichier nommé « », son unité associée sera stockée dans le fichier nommé « ». voire la figure suivante :

Figure : la nomination des fches & unités
Il est également possible d'utiliser des unités qui n'ont pas de fiche associée. Ceci est utile par exemple pour rassembler des morceaux de programme qui n'ont aucun rapport avec une quelconque fiche. Le fichier qui contient cette unité porte l'extension 'PAS', comme s'il avait une fiche associée, mais il n'en a pas : il n'y a pas de fichier nommé identiquement, mais avec l'extension 'DFM'.
Un projet sous Delphi est constitué d'un fichier-projet (portant l'extension 'DPR'), d'unités et de fiches. Chaque fiche a son unité correspondante, mais certaines unités n'ont pas, comme on l'a vu ci-dessus, de fiche associée (il y a toujours au moins autant d'unités que de fiches dans un projet, et souvent plus). Pensez en outre à donner des noms descriptifs, ou au moins significatifs lors des enregistrements des unités ou des fiches (Ainsi, « » est un bien mauvais choix !).
Lors de la compilation du projet (transformation en application), d'autres fichiers seront créés : des fichiers DCU (fichiers portant l'extension 'DCU', essayez de vous habituer à ces abus de langage). Ces fichiers sont la forme compilée des fichiers de même nom qui portent les extensions 'PAS' et 'DFM' : un 'PAS' (avec son 'DFM' associé s'il y en a un) est transformé en 'DCU' lors de la compilation. Un fichier 'EXE' est enfin créé si la compilation atteint son terme (si tous les fichiers 'DCU' ont pu être créés). Ce fichier est nommé avec le même nom de base que celui du fichier projet (fichier DPR).
Le schéma ci-dessous représente la transformation d'un projet en application, avec les éléments que vous devez désormais connaître. Ce projet comporte deux fiches (avec les unités associées) ainsi qu'une unité seule :
Figure : un projet Delphi, du source à l’execution.
Lors des enregistrements successifs d'un projet, d'autres fichiers avec des extensions ~DP, ~DF, ~PA, ~DC, ~DPR, ~DFM, ~PAS, ~DCU sont créés : ce sont des copies de sauvegarde (des versions plus anciennes) des fichiers portant le même nom, sans le signe tilde (~)
Exemple : « optionsaffich.~PA » est une copie de sauvegarde de « ».
Enfin, d'autres fichiers ayant le même nom que le fichier projet (celui qui porte l'extension DPR) mais avec l'extension .RES, .OPT, .CFG, .DOF, .DSK, .DSM sont créés dans certaines circonstances. Vous n'avez pas à vous souciez de ces fichiers.
Le tableau suivant donne une liste aussi complète que possible des fichiers pouvant être rencontrés dans le répertoire d'un projet Delphi :
Extension du fichier |
Description et Commentaires |
DPR |
(Delphi PRoject) Contient l'unité principale du projet |
PAS |
(PAScal) Contient une unité écrite en Pascal. Peut avoir un .DFM correspondant |
DFM |
(Delphi ForM : fiche Delphi) Contient une fiche (une fenêtre). Le .PAS correspondant contient toutes les informations relatives au fonctionnement de cette fiche, tandis que le .DFM contient la structure de la fiche (ce qu'elle contient, sa taille, sa position, …). Sous Delphi 5, les .DFM deviennent des fichiers texte qu'il est possible de visualiser et de modifier. La même manipulation est plus délicate mais possible sous Delphi 2 à 4. |
DCU |
(Delphi Compiled Unit : Unité compilée Delphi) ![]() Forme compilée et combinée d'un .PAS et d'un .DFM optionnel |
~??? |
Tous les fichiers dont l'extension commence par ~ sont des fichiers de sauvegarde, pouvant être effacés pour faire place propre. |
EXE |
Fichier exécutable de l'application. Ce fichier est le résultat final de la compilation et fonctionne sous Windows exclusivement. Pour distribuer le logiciel, copier ce fichier est souvent suffisant. |
RES |
(RESsource) Fichier contenant les ressources de l'application, tel son icône. Ce fichier peut être édité avec l'éditeur d'images de Delphi. Ces notions seront abordées plus loin dans ce guide. |
DOF DSK CFG |
Fichiers d'options : suivant les versions de Delphi, ces fichiers contiennent les options du projet, les options d'affichage de Delphi pour ce projet, |
Étapes :
Inserer le premier bouton dans la fiche comme suite :
Remarque de base
Pour simplifier la présentation des étapes de création des interfaces des exemples suivants, on présente les objets à insérer sur une fiche par un tableau contenant : les noms des composants, leurs propriétés à manipuler (dans leurs inspecteurs d’objets) et enfin les valeurs à donner à ces propriétés.
Donc, l’étape précédente peut être présentée comme suite :
1-insérer les composants suivants de la palette Standard :
Composant |
Propriété ![]() |
Valeur |
Button1 Button2 Button3 |
Caption Caption Caption |
bleu rouge vert |
2-double clique sur le bouton1 (Bleu) et écrire dans la procédure : Form1.Color:=CLBlue;
Une Valeur adéquate pour la propriété (cl : veut dire couleur)
Une de ses propriétés
ou méthodes
Le nom de l’objet
Remarque
Si vous écrivez :
Form1.
Delphi, grâce à son assistant de saisie semi-automatique, vous propose la liste des membres (propriétés et méthodes) de la classe saisie (Form1), et on peut soit choisir dans liste la propriété ou méthode voulue, ou taper les premières lettres de l’élément voulu (exemple : co pour ecrire color) et lorsqu’il sera sélectionné dans la liste on tape Entrée pour que Delphi l’écrit dans l’instruction.
3- taper F12 pour revenir à la fiche et double clique sur le bouton2 (Rouge) et écrire dans la procédure : Form1.color:=CLRed;
4- taper F12 pour revenir à la fiche et double clique sur le bouton3 (Vert) et écrire dans la procédure : Form1.color:=CLGreen;
5- Lancer l’éxécution par la touche F9, ou par le bouton ; Et verifier le bon fonctionnement de la fiche.

Interface
Étapes :
1-insérer les composants suivants de la palette Standard :
Composant |
Propriété |
Valeur |
Edit1 |
text |
|
Edit2 |
text |
|
Edit3 |
text |
|
Label1 |
Caption |
Devoir |
Label2 |
Caption |
Composition |
Label3 |
Caption ![]() |
Moyenne |
Button1 |
Caption |
Calcul |
2- double clique sur le bouton1 (calcul) et écrire dans la procédure :
:= floattostr ((strtofloat () + strtofloat ())/3);
3- Lancer l’éxécution par la touche F9, ou par le bouton ; Et verifier le bon fonctionnement de la fiche.
Remarque 1:
1- le casting=changement de type =conversion de type (strtofloat, floattostr, inttostr, strtoint ….)
2- une autre solution possible (à écrire dans la procédure du bouton1 “calcul”)
(Supprimer le begin et end de la procédure et coller tous le code source suivant)
Var dev,comp,moy :real ; Begin
dev:= strtofloat();
comp:= strtofloat(); moy:= (dev+comp)/3; := floattostr(moy);
End ;
Remarque 2 :
Le Casting = c’est aussi la conversion de type dans une affectation ou un test.
Exemple:
:=floattostr((strtofloat() + strtofloat())/3) ;
If strtofloat()

Showmessage(‘étudiant ajourné’)
Else
Showmessage(‘étudiant admis’) ;
Interface:
Étapes
1-insérer les composants suivants de la palette standard:
Composant |
Propriété |
Valeur |
Edit1 |
Text |
|
Edit2 |
Text |
|
Label1 |
Caption |
Nombre |
Label2 |
Caption |
Factoriel |
Button1 ![]() |
Caption |
Calcul |
2-double clique sur le bouton1 (calcul) et écrire dans la procédure :
(Supprimer le begin et end de la procédure et coller tous le code source suivant)
var a,b,fact :integer; Begin
a:= strtoint();
if a>=0 then begin fact:=1; for b:=1 to a do fact:=fact*b; := inttostr (fact);
End
Else
Showmessage ('pas de factoriel pour un nombre négatif'); end;
3- Lancer l’éxécution par la touche F9, ou par le bouton ; Et verifier le bon fonctionnement de la fiche.
Interface:
Étapes
1- insérer un composant image de la palette « supplément ».
2- choisir dans son inspecteur d’objet la propriété :
Clic ici
3- dans la fenetre qui s’affiche, on clic sur le bouton :
Pour chercher l’image voulue dans le disque dur.
3- dans la nouvelle fenetre, et après avoir selectioner l’image voulue on clic sur le bouton :
Ensuite sur le bouton :

5- pour que l’image s’agrandie si elle a une taille plus petite que la surface de son cadre on modifie sa propriété :
Aussi modifier sa propriété :
Pour que cette image aucupe tous l’espace de la fenetre actuelle.
Clic ici pour choisir la valeur True Clic ici pour choisir la valeur alClient
Étapes :
Partie1 :
1- insérer les composants suivants de la palette standard:
Composant |
Propriété |
Valeur |
Radiobutton1 |
Caption |
Bleu |
Radiobutton2 |
Caption |
Rouge |
Radiobutton3 |
Caption |
Vert |
2- double clique sur le Radiobutton1 (Bleu) et écrire dans la procédure : Form1.color:=clblue;

3- taper F12 et double clique sur le Radiobutton2 (ROUGE) et écrire dans la procédure :
Form1.color:=clred;
4- taper F12 et double clique sur le Radiobutton3 (Vert) et écrire dans la procédure : Form1.color:=clgreen;
5- Lancer l’éxécution par la touche F9, ou par le bouton ; Et verifier le bon fonctionnement de la fiche.
Partie 2 :
1- insérer un composant Label1 (palette standard) et ecrire dans sa propriété caption : couleur.
2- insérer un composant Combobox1 (palette standard) et ecrire sa propriété text : (vide).
3- clique sur le composant Combobox1 et dans son inspecteur d’objet on choisit la propriété :
Clique ici pour écrire les élements de la liste
A la fin, clic sur ce bouton pour fermer la fenetre
4- double clique sur le Combobox1 et écrire dans la procédure (attention au lettres majuscules):
If =’Bleu’ then form1.color:=clblue;
if =’Rouge’ then form1.color:=clred;
if =’Vert’ then form1.color:=clgreen;
5- Lancer l’éxécution par la touche F9, ou par le bouton ; Et verifier le bon fonctionnement de la fiche.
Partie 3 :
1- insérer un composant button1 (palette standard) et écrire dans sa propriété caption : couleur.
2- insérer un composant popupmenu1 (palette standard), c’est un menu contextuel qui s’affiche lors du clique par le bouton droit de la sourie sur un composant lié à ce menu.
3- double clique sur le popupmenu1, une fenêtre d’édition du menu contextuel s’affiche :
Clic sur la case d’un élément du menu contextuel

Écrire le titre de cet
élément du menu
De cette façon, on écrit les eléments suivant :
A la fin fermer la fenêtre de l’editeur de menu.
4- double clique sur le Popupmenu1 et double clique sur l’élément « Bleu » et écrire dans la procédure :
Form1.color:=clblue ; Et taper F12 pour revenir à la fiche.
5- double clique sur le popupmenu1et double clique sur l’élément « Rouge » et écrire dans la procédure :
Form1.color:=clred ; Et taper F12 pour revenir à la fiche.
6- double clique sur le popupmenu1et double clique sur l’élément « Vert » et écrire dans la procédure : Form1.color:=clgreen ; Et taper F12 pour revenir à la fiche.
7-dans la fiche clique sur le bouton1 (couleur) et dans son inspecteur d’objet choisir la propriété :
Clic ici pour choisir le menu : PopupMenu1
Cette propriété assure que si on clique par le bouton droit de la sourie sur le Bouton1 le popupmenu1 s’affiche. 8- Lancer l’éxécution par la touche F9, ou par le bouton ; Et verifier le bon fonctionnement de la fiche.
Partie 4 :
1-insérer un composant Colordialog1 (palette Dialogues).
2-insérer un composant button2 (palette standard) et sa propriété caption choix de couleur.
3-Double clique sur le composant bouton2 et écrire :
Colordialog1.execute;
Form1.color:=colordialog1.color;
4- Lancer l’éxécution par la touche F9, ou par le bouton ; Et verifier le bon fonctionnement de la fiche.
Remarque :

Delphi propose des boites de dialogues divers pour contrôler et enrichir d’interface des applications par des API et des DLL Windows ; ces boites figurent dans la palette des composants dans l’onglet dialogues; par exemple :
Fontdialog : choix du font des composants de l’interface (la police du traitement de texte).
Colordialog : choix de la couleur des composants de l’interface.
Opendialog : donne la boite de dialogue Windows d’ouverture des fichiers Savedialog : donne la boite de dialogue Windows d’enregistrement des fichiers.
Finddialog : recherche une chaîne de caractères dans un texte.
Replacedialog : recherche et remplacement d’une chaîne de caractère par une autre dans un texte. Printdialog : permet la configuration de l’imprimante en cas d’impression des états. Nb : pour afficher une boite de dialogue quelconque on écrit : nomboite.execute ;
Exemple : fontdialog1.execute ;
Chaque boite de dialogue a une propriété spéciale qui donne la possibilité de manipuler le résultat d’affichage de cette boite ; exemple : la couleur choisie dans la boite de dialogue Colordialog sera mise dans la propriété color de ce composant et on peut l’utiliser sur une fiche comme suite :
Form1.Color :=Colordialog1.Color ;
TP2 : LANCEMENT D’UN LOGICIEL (EXÉCUTABLE) À PARTIR D’UNE FICHE DELPHI
Pour lancer une application à partir de Delphi (exemple : une calculatrice) on procède comme suite: 1- on insère un button1 dans une fiche delphi.
2- double clique sur ce bouton et écrire dans la procédure :
WinExec(‘’,sw_show) ;
Remarque1:
Sw : show window (une fonction d’affichage des fenêtres).
Show : afficher.
Winexec : windows éxécution
Remarque 2 :
Si Delphi ne reconnais pas le logiciel (Delphi ne reconnais que les logiciels installés par défaut avec l’installation de Windows) on doit écrire le chemin complet de ce logiciel.
Exemple : lancement du Microsoft word :

WinExec(‘C:\Program Files\Microsoft Office\Office\’,sw_show) ;
Les commentaires se placent entre accolades (pour un commentaire en plusieurs lignes), ou parenthèses et étoiles (pour commenter en plusieurs lignes) ou derrière 2 slaches (pour commenter en une seule ligne).
Exemple :
{Ceci est un commentaire}
(*Ceci est un autre commentaire*)
// Tout ce qui suit et jusqu’à la fin de ligne est aussi un commentaire