Tutoriel de Programmation avec DELPHI : les applications Console
![Tutoriel de Programmation avec DELPHI : les applications Console](/images/remos_downloads/id-5651.5651.pdf_thumb_prev.jpg)
1 LA PROGRAMMATION DELPHI 1
1.1. PRÉSENTATIONDE DELPHI 1
1.1.1 Philosophie ..1
1.1.2 Principes ..2 1.1.3 Mode de programmation ..2
1.1.4 Les versions .3
1.1.5 Installation ..4
1.2 L ’ENVIRONNEMENT DE DÉVELOPPEMENT .5
1.2.1 L’interface graphique .5
1.2.2 La Barre « Menu » ..6
1.2.2.1 Menu " Fichier" 6 1.2.2.2 Menu "Edition" 7
1.2.2.3 Menu "Chercher" 9 1.2.2.4 Menu "Voir" ..9
1.2.2.5 Menu "Projet" .10 1.2.2.6 Menu "Exécuter" ..10
1.2.2.7 Menu "Composant" .11 1.2.2.8 Menu "Base de données" ..11
1.2.2.9 Menu "Outils" 12
1.2.2.10 Menu "Aide" 12
1.2.3 La barre de commande 14
1.2.4 La barre des composants ..15 1.2.5 La forme .26
1.2.6 L’éditeur .26
1.2.7 L'inspecteur d'objets .28
2 L'ENVIRONNEMENT WINDOWS 29
2.1 DESCRIPTIONGÉNÉRALE 29
2.1.1 Histoire de Windows 29 2.1.2 Fonctionnement en mode événementiel .29
2.1.3 Caractéristiques générales d'une fenêtre ..31 2.1.4 Fenêtre modale ou amodale .34
2.1.5 Applications MDI et SDI 35
2.2 MODES DE PROGRAMMATION D'UNE APPLICATION WINDOWS .35 2.3 NORMESDEPROGRAMMATION .38
2.3.1 Ordre des menus ..38
2.3.2 Les boutons d'une boîte de dialogues ..39
2.3.3 Contraintes systèmes 40
3 ELÉMENTS DE SYNTAXE PASCAL 41
3.1 IDENTIFIANT, OPÉRATEURS ET TYPES .41
3.1.1 Identifiants 41 3.1.2 Opérateurs de base ..43
3.1.3 Les types .44
3.1.4 Déclarations de variables 48
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-002.jpg)
3.2 TABLEAUX, CHAÎNES DE CARACTÈRES ET ENREGISTREMENTS 48
3.2.1 Les tableaux 48
3.2.2 Les chaînes de caractères .50
3.2.3 Les enregistrements .51
3.3 AUTRESTYPESCOMPLEXES .52
3.3.1 Type énuméré .52
3.3.2 Type intervalle 52
3.3.3 Type ensemble .52
3.4 STRUCTURED'UNPROGRAMME 53
3.4.1 Section "en-tête" 53
3.4.2 Section "déclaration" .53
3.5 LESUNITÉS ..55
3.5.1 Définition 55
3.5.2 Partie déclarative d'une unité 55
3.6 LESSTRUCTURESDECONTRÔLE 56
3.6.1 La structure de sélection simple " si … alors … sinon " ..56
3.6.2 La structure de sélection multiple 58 3.6.3 Structure itérative "tant que" .58
3.6.4 Structure itérative " répéter jusqu'à" 59
3.6.5 Structure à itération limitée : ..59
3.7 LESPOINTEURS ..60
3.7.1 Généralités ..60
3.7.2 Utilisation d'un pointeur ..61 3.7.3 Initialisation d'une zone mémoire par un pointeur ..61
3.7.4 Allocation dynamique .62
3.8 LES PROCÉDURES ET LES FONCTIONS ..62
3.8.1 Structures d'une procédure et d'une fonction : .63 3.8.2 Passages de paramètres par valeurs ou par variables : 64
3.8.3 Durée de vie et visibilité des variables : 64
3.8.4 Directives de compilation .65
3.9 EVOLUTIONS SPÉCIFIQUES À DELPHI ..67
4 FONCTIONS ET PROCÉDURES PASCAL .69
4.1 ROUTINES DE CONVERSION DE DONNÉES ..69 4.2 ROUTINES DE GESTION DE FICHIERS SUR DISQUE .72
4.2.1 Manipulation des fichiers .72
4.3 OPÉRATIONS DE MANIPULATION SUR LES FICHIERS ..73
4.4 ROUTINESDÉRIVÉESDU PASCAL .74 4.4.1 Nouvelles routines (dérivées du langage C) 80
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-004.jpg)
CONST FMOPENREAD $0000; .80
CONST FMOPENWRITE $0001; ..80
CONST FMOPENREADWRITE $0002; ..80
CONST FMSHARECOMPAT $0000; .80
CONST FMSHAREEXCLUSIVE $0010; 80
CONST FMSHAREDENYWRITE $0020; ..80
CONST FMSHAREDENYREAD $0030; 80
CONST FMSHAREDENYNONE $0040; 80
4.5 GESTION DES FICHIERS ET RÉPERTOIRES 81 4.6 GESTION DES CHAÎNES DE CARACTÈRES 83
4.6.1 Chaînes de type Pascal .83
4.6.2 Chaînes à zéro terminal 84
4.7 GESTIONDELADATE .85 4.8 ROUTINESDIVERSES ..87
5 PRINCIPES DE BASE DE LA POO ..88
5.1 LECONCEPT OBJET 88
5.1.1 Les principes de la modélisation 88
5.1.2 Les concepts Clés ..88
5.1.2.1 Objet ..88
5.1.2.2 Encapsulation .89 5.1.2.3 Classe .89
5.1.2.4 Instance .90 5.1.2.5 Méthode 90 5.1.2.6 Message 90 5.1.2.7 Héritage .91
5.1.2.8 Polymorphisme .91
5.1.2.9 Constructeur d’objet 92
5.1.2.10 Destructeur d’objet 92
5.1.2.11 Concepts majeurs de la programmation objet ..92
5.1.3 Plus simplement … ..92
5.2 PRINCIPE DE FONCTIONNEMENT DE DELPHI .94
5.2.1 Les composants ..94
5.2.2 L'inspecteur d'objet .94
5.2.3 Accès aux méthodes ..96 5.2.4 L’aide en ligne .96
5.2.5 Programmation événementielle .97
5.2.6 Génération de code 100
5.3 NOTIONDEPROJET .101
5.3.1 Généralités .101
5.3.2 Organisation d’un projet .101 5.3.3 Source d’un projet ..102
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-005.jpg)
5.3.4 Organisation d’une unité 103
5.3.4.1 Clause « uses » ..103 5.3.4.2 Section « interface » 104
5.3.4.3 Section « implementation » ..104 5.3.4.4 Section « initialization » .104
5.3.4.5 Section « finalization » 104
5.3.5 Organisation d’une forme ..104 5.3.6 Le gestionnaire de projet ..105
5.3.7 Options du projet .106 5.3.8 La galerie de projets 107
5.3.9 Modèles de fiches ..108
5.4 EXÉCUTIOND'UNEAPPLICATION 109
5.4.1 Taille de l'exécutable 109 5.4.2 Mise au point d'un programme 111
5.4.3 Contraintes systèmes .111
6 GÉNÉRALITÉS SUR LES COMPOSANTS ..113
6.1 LESDIFFÉRENTESCLASSES 113
6.1.1 Classes de base de la bibliothèque VCL .113
6.1.2 Déclaration d'un objet ..115
6.2 LESCOMPOSANTS .115
6.2.1 Principales classes internes ..116 6.2.2 Propriétés et méthodes générales : 116
6.2.3 Principales propriétés des composants 120 6.2.4 Principales méthodes utilisées 123
6.2.5 Principaux événements utilisés ..124
6.3 ACCÈS AUX COMPOSANTS ET LANCEMENT DES ÉVÉNEMENTS .125
6.3.1 Accélérateurs 125 6.3.2 Composant actif .125
6.3.3 Ordre de tabulation ..126 6.3.4 Partage d'un événement ..126
6.3.5 Exécution d'un événement par programmation .126
7 LES PRINCIPAUX COMPOSANTS ..128
7.1 COMPOSANTS DU NIVEAU "APPLICATION" ..128
7.1.1 Le composant TForm ..129
7.1.2 Création, appel et destruction d'une fiche .132 7.1.3 Le composant TApplication ..135
7.1.4 Le composant TScreen 137
7.2 COMPOSANTS PERMETTANT LA RÉALISATION D'UNE INTERFACE .138
7.2.1 Le composant TPanel ..138
7.2.2 Le composant TBevel ..140 7.2.3 Le composant TLabel ..140 7.2.4 Le composant TTabControl 141
7.2.5 Le composant TPageControl .141
7.3 LESMENUS 142
7.3.1 Le concepteur de menu .143 7.3.2 Le composant TMenuItem ..144
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-007.jpg)
7.3.3 Manipulation des menus par programmation ..145
7.3.4 Les menus "Pop-up" ..146
7.4 LESBOUTONS .146
7.4.1 Généralités sur les boutons 147 7.4.2 Spécificités des composants TBitBtn .148
7.4.3 Les TSpeedButton et les barres d'icônes .149
7.5 LES COMPOSANTS PERMETTANT LA SAISIE ET L'AFFICHAGE DE TEXTE .150
7.5.1 Composant TEdit .150
7.5.2 Le composant TMemo ..151
7.6 LES COMPOSANTS DE TYPE "BOITE DE LISTE" ..152 7.7 PRÉSENTATIOND'OPTIONS .154
7.7.1 Les cases à cocher ..154
7.7.2 Les boutons radio 154
7.7.3 La boite "groupe radio" ..155
7.8 LESBOÎTESDEMESSAGES ..156
7.8.1 Procédure ShowMessage 156 7.8.2 Fonction MessageDlg .157
7.8.3 Boites de saisie .158
7.9 ACCÈS AUX BOITES DE DIALOGUE DE WINDOWS .160
7.9.1 Principe d'utilisation 160 7.9.2 La boite de dialogue "OpenDialog" .161
7.9.3 Utilisation de composants système 162
7.10 AJOUTDECOMPOSANTS .162
8 PROGRAMMATION AVANCÉE .164
8.1 VARIABLES ET PROGRAMMATION PAR OBJETS 164
8.1.1 Utilisation des propriétés en tant que variables .164 8.1.2 Visibilité d'une variable ..166
8.1.3 Passage de paramètre entre fiches liées (mère - fille) .168 8.1.4 Utilisation optimale des variables 169
8.1.5 Paramètres 'Sender' et 'Source' .169
8.2 GESTIONDESEXCEPTIONS .172
8.2.1 Try Except End .173
8.2.2 Try Finally End ..174
8.2.3 Raise ..175 8.2.4 Les différentes exceptions ..175
8.2.5 L'événement OnException du composant TApplication : .177
8.3 CONTRÔLE DE VALIDITÉ D'UN CHAMP ..178
8.3.1 Composant TMaskEdit .178 8.3.2 Utilisation de l'événement OnChange .179
8.3.3 Utilisation de l'événement OnExit ..179 8.3.4 Contrôle du clavier 180
8.3.5 Utilisation d'un gestionnaire d'exception 181
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-008.jpg)
8.4 AFFICHAGEDENOMBRESRÉELS ..182
9 AUTRES POSSIBILITÉS OFFERTES ..184
9.1 GESTIOND'UNEAPPLICATION MDI 184
9.1.1 Réalisation d'une application MDI ..184
9.1.2 Menus adaptés aux fenêtres filles .186
9.2 LE "DRAGAND DROP" 186 9.3 LECOMPOSANT TTIMER ..188 9.4 CONSTITUTION D'UNE BARRE D'ÉTAT .189 9.5 JAUGES ..191 9.6 LECOMPOSANT TSTRINGGRID 192
10 PROGRAMMATION DES BASES DE DONNÉES .194
10.1 LESBASESDEDONNÉES .194
10.1.1 Base de données relationnelle .195
10.1.2 Notion d'enregistrement courant .195 10.1.3 Tables liées 196
10.1.4 Requêtes et vues ..196
10.2 ARCHITECTURE INTERNE PERMETTANT L'ACCÈS AUX BASES DE DONNÉES ..197 10.3 LE MODULE DE CONCEPTION DE BASE DE DONNÉES DBD 198
10.3.1 Configuration de DBD 198 10.3.2 Notion d'alias 199
10.3.3 Utilisation de DBD 199
10.3.4 Création d'une table ..200
10.3.5 Utilisation ultérieure de DBD ..204
10.4 CONFIGURATIONDE BDE 205 10.5 DISTRIBUTION D'APPLICATIONS DELPHI ..206
11 CRÉATION D'UNE APPLICATION DE BASE DE DONNÉES ..207
11.1 ARCHITECTURE DES BASES DE DONNÉES DELPHI .207 11.2 CONSTRUCTION D'UNE APPLICATION DE GESTION DE BASE DE DONNÉES ..208
11.2.1 Différents composants permettant l'accès à BDE ..208 11.2.2 Composants constituant l'interface utilisateur dérivés de composants usuels ..210
11.2.3 Composants particuliers à la gestion des bases de données .211 11.2.4 Création d'une application .214
11.2.5 Les composants TDBLoockupComboBox et TDBLoockupListBox 216
11.3 AUTRES FONCTIONNALITÉS OFFERTES ..220
11.3.1 Tables liées 220 11.3.2 Consultation de la structure d'une base ..220
11.3.3 Effacements 221
12 ACCÈS AUX DONNÉES ..222
12.1 GESTION D'UN ENSEMBLE DE DONNÉES 222
12.1.1 Modes de gestion 222
12.1.2 Déplacement dans un ensemble de données .223 12.1.3 Modification des états ..224
12.1.4 Modification d'enregistrements complets ..226
12.1.5 Evénements associés à la manipulation d'un ensemble de données .227
12.2 ACCÈS AUX DONNÉES PAR PROGRAMMATION .228
12.2.1 Les objets TField .228
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-009.jpg)
12.2.2 Conversion d'une valeur affectée dans un champ ..231
12.2.3 Différentes méthodes d'accès aux champs .232
12.3 RECHERCHESDANSUNETABLE .233
12.3.1 Utilisation des méthodes Goto 233
12.3.2 Utilisation des fonctions Find ..234
12.3.3 Recherche selon un index secondaire ..235
13 REQUÊTES SQL 236
13.1 GÉNÉRALITÉSSUR SQL ..236
13.1.1 Qu'est-ce que SQL ? .236
13.1.2 Qu'est-ce qu'une requête ? .236
13.2 SYNTAXE SQL .237
13.2.1 Définition des données 237
13.2.2 Manipulation de données 238 13.2.3 Format des requêtes .239
13.2.4 Les opérateurs SQL 240
13.3 UTILISATION DU COMPOSANT TQUERY .240
13.3.1 Configuration du composant .241
13.3.2 Rédaction de requêtes SQL 241
13.4 PROGRAMMATION SQL .245
13.4.1 Programmation d'ordre de description de données ..245
13.4.2 Programmation de requêtes SQL 246
13.5 REQUÊTES SQL DYNAMIQUES (OU "PARAMÉTRÉES") ..246
13.5.1 Réalisation d'une requête SQL dynamique ..246
13.5.2 Requêtes dynamiques liées à une table ..248
14 POSSIBILITÉS AVANCÉES .250
14.1 CRÉATION D'UNE BASE DE DONNÉES DE MANIÈRE DYNAMIQUE ..250
14.1.1 Création dynamique de la base 250
14.1.2 Création d'index secondaires 253
14.2 POSSIBILITÉS AVANCÉES DU COMPOSANT TTABLE 254
14.2.1 Champs calculés ..254
14.2.2 Pose de marques 255
14.2.3 Définition de filtres 256
14.3 CONTRÔLE DE VALIDITÉ DES DONNÉES 257
14.3.1 Contrôles de base 257
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-010.jpg)
14.3.2 Limitation de la longueur de la zone de saisie .257 14.3.3 Utilisation de la propriété EditMask 258
14.3.4 Utilisation des propriétés Editformat et DisplayFormat 259
14.3.5 Gestion d'une erreur due à une violation de clé .259
14.4 UTILISATION OPTIMISÉE DES COMPOSANTS .261
14.4.1 Accès rapide à un enregistrement ..261
14.4.2 Utilisation du composant TBatchMove 263
1 La programmation Delphi
1.1. |
Présentation de DELPHI |
|||
1.1.1 |
Philosophie |
|||
Environnement de développement « visuel » :
- permet de réaliser des applications Windows :
- sur Windows 98, NT et 2000,
- simple et rapide avec son EDI (sans définir ni variable, ni méthode) par simples « click » :
- pour créer une interface graphique d’application,
- facilite le codage (il n’y a plus qu’à remplir des zones de texte),
- met tous les outils accessibles par menus et icônes,
- utilise le langage Object Pascal = dérivé orienté objet de Pascal 7, -
Développement rapide d’applications :
- Delphi est un « RAD »,
- Propose une bibliothèque importante de composants prédéfinis => PPO,
- Permet l’élaboration d’interfaces graphiques complexes par le jeu de la construction, - Les composants proposés :
- sont des VCL (visual composant library) compilés pour un emploi direct (à rapprocher des VBX sous Visual Basic),
- encapsulent quasiment complètement l’accès à Windows : ils cachent au programmeur toutes les difficultés inhérentes à ce type de programmation (manipulation des différents handles, DC, paramètres, événements, etc ).
Langage Objet :
- Basé sur un véritable langage objet,
- Permet de créer ses propres composants,
- De modifier le comportement des composants fournis.
- Permet de réaliser la "programmation orientée objet" (POO).
- Delphi permet la réalisation d'applications Windows sans avoir à connaître au préalable les mécanismes fondamentaux de la programmation orientée objets.
- On peut aborder ce type de programmation ultérieurement, lorsque la prise en main du produit est déjà réalisée, que le besoin s'en fait sentir… ou jamais.
L4G :
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-011.jpg)
- s’approche des langages de 4ème génération (L4G),
- en plus, permet de créer des applications exécutables compilées,
Accès aux bases de données :
- Delphi propose un moteur de système de gestion de base de données (le même que celui du SGBD/R "micro" Paradox du même éditeur) appelé BDE (Borland Database Engine).
- Ce moteur permet de créer, modifier et gérer très facilement des "tables" contenant des données, avec toutes les fonctions de contrôles de données évolués propres aux SGBD.
- De fait, Delphi permet de constituer des applications de gestion de bases de données puissantes au même titre que les progiciels spécialisés actuels (tels Paradox ou Access) tout en offrant des possibilités de programmation nettement plus importantes.
- Un utilitaire spécifique permet de réaliser et de tester des requêtes SQL qu'il est ensuite possible d'intégrer directement au code.
- Dans sa version professionnelle, Delphi permet de réaliser des applications "client/serveur" en utilisant un véritable serveur SQL plus complexe, appelé Interbase, ou en accédant aux données gérées par les principaux serveurs SQL du monde professionnel.
L’aide :
- Il est livré avec plusieurs "aides en ligne" au format Windows (.hlp) - écrites en français - pratiquement indispensables pour réaliser efficacement les applications,
- Les aides contiennent l'ensemble des informations nécessaires (types de paramètres, type de retour, …).
1.1.2 |
Principes |
Les applications DELPHI fonctionnent en mode événementiel :
- Les différentes fonctionnalités du programme sont activées lorsque certains "événements" surviennent (et seulement lorsque ceux-ci surviennent).
- Ces événements sont déclenchés par le système mais ils sont plus généralement activés par l'utilisateur par ses actions sur la souris ou au clavier.
Delphi permet de réaliser "à la souris" des applications complètes. On parle alors de "développement visuel d'applications".
La simplicité de développement n'est qu'apparente :
- Il est effectivement possible de créer certaines applications sans avoir à écrire une seule ligne de code,
- Il ne faut pas oublier que le développement d'applications plus ambitieuses reste complexe et parfois fastidieux.
- Delphi aide le programmeur dans toutes les phases du développement mais Delphi s'adresse avant tout à des programmeurs,
- Il est illusoire de chercher à créer quoi que ce soit si l'on pense pouvoir s'abstraire des règles de programmation habituelles :
- analyse préalable conséquente,
- respect de règles précises,
- qualité de la programmation,
- un effort d'apprentissage conséquent permettant une utilisation optimale des différentes ressources, utilitaires, etc
Delphi peut donc être vu comme un "piège à programmeurs du dimanche" qui croient que la facilité d'emploi d'un environnement définit la puissance et la qualité du logiciel réalisé. Les désillusions surviennent rapidement…
1.1.3 |
Mode de programmation |
Programmer une application graphique qui fonctionne en mode événementiel est très différent de réaliser une application classique selon les règles strictes de la programmation structurée :
- en mode événementiel, il faut réaliser des fonctionnalités pratiquement indépendantes les unes des autres sans qu'il soit possible de définir l'ordre dans lequel elles seront exécutées.
- Le nombre de fonctionnalités est souvent très important et peut être difficile à appréhender dans son ensemble.
Il est donc prudent :
![](/images/remos_downloads/detail/56/id-5651.5651.pdf-012.jpg)
de commenter ses sources, d'utiliser certaines règles de dénomination des différentes variables pour que l'ensemble du projet ne devienne pas difficile, voire impossible, à gérer.
A l'intérieur de chaque fonctionnalité, la programmation structurée reprend ses droits.
L'algorithmie de chaque fonctionnalité peut aller de simple à complexe.
1.1.4 |
Les versions |
Delphi existe en trois versions :
- • La version standard (S) :
- • Environnement de développement complet, • N'offre pas tous les outils et composants.
- • La version professionnelle (P) :
- • contient davantage d'outils.
- • Permet de :
- • programmer des applications Internet et Intranet,
- • Permet de développer des contrôles ActiveX,
- • Offre plus de fonctions de base de données.
- • La suite Client/Serveur (C/S) :
- • Permet le développement des applications client-serveur complètes,
Environnement de développement à la pointe de la technologie |
Delphi STD |
Delphi Pro |
Delphi Ent |
|||
CodeInsightTM : modèles de code, complément de code et de paramètres |
X |
X |
X |
|||
Exploration de projet permettant de mieux comprendre votre code et parcourir la VCL |
X |
X |
||||
Cadres pour construire et réutiliser des composants composites |
X |
X |
||||
Concepteur de module de données avec vues arborescentes et diagrammes de données |
X |
X |
||||
Expert Panneau de configuration pour personnaliser les propriétés de vos applications |
X |
X |
||||
Débogage évolué |
||||||
Conseils, actions et groupes de points d'arrêt pour un meilleur contrôle |
X |
X |
X |
|||
inspecteur de débogage et vue d'inspecteur ![]() |
X |
X |
||||
Vue FPU et prise en charge MMX pour un débogage de bas niveau amélioré |
X |
X |
||||
Débogage distant et interprocessus pour un développement distribué évolué |
X |
X |
||||
Bibliothèque de composants visuels avec une réutilisabilité maximale |
||||||
Plus de ____ composants standard |
85+ |
150+ |
200+ |
|||
Catégories de propriétés pour améliorer l'apprentissage et la productivité |
X |
X |
X |
|||
Expert d'applications console pour écrire rapidement des applications simples |
X |
X |
X |
|||
WebExtra : prise en charge des images JPEG et de la compression ZLib |
X |
X |
||||
Amélioré : éditeur de propriétés et code source de la VCL |
X |
X |
||||
Composant Internet Explorer pour l'intégration d'un navigateur |
X |
X |
||||
TeamSourceTM pour l'adaptation du RAD à toute votre équipe de |
X |
|||||
développement ![]() |
||||||
Compléments au développement |
||||||
CD-ROM de JBuilderTM 2 et C++BuilderTM 3 |
X |
X |
||||
InstallShield Express et Resource Workshop |
X |
X |
||||
Développement à haute productivité pour Internet |
||||||
Internet Explorer |
X |
X |
X |
|||
WebBroker : livrez les applications de bases de données Web les plus rapides |
X |
X |
||||
ActiveForms pour la construction d'applications Web |
X |
X |
||||
Composants Internet natifs FastNet (ftp, smtp, pop3, http, etc) |
X |
X |
||||
InternetExpressTM : clients légers complets pour le Web |
X |
|||||
prise en charge de la prévisualisation HTML 4 plus expert d'application Web |
X |
|||||
MIDASTM : DataBroker distant pour partitionner facilement les applications |
X |
|||||
prise en charge évoluée de fournisseur et résolveur maître/détail |
X |
|||||
Données XML pour simplifier l'échange de données |
X |
|||||
Clients Dynamic HTML 4/XML complets pour le Web |
X ![]() |
|||||
Outils de développement de bases de données intégrés : connectez-vous à toutes vos données d'entreprise |
||||||
Pilotes Access, FoxPro, Paradox et dBASE et connectivité ODBC |
X |
X |
||||
Prise en charge d'InterBase 5.5 et d'InterBase local |
X |
X |
||||
InterBase NT (licence 5 utilisateurs) pour développer et tester des applications SQL multi-utilisateurs |
X |
X |
||||
Liaison de données de contrôle ActiveX et expert d'objet COM |
X |
X |
||||
Prise en charge de MS SQL Server |
X |
|||||
ADOExpress pour l'accès à tous les types d'informations |
X |
|||||
Prise en charge d'Oracle8i avec champs imbriqués (ADT), champs tableaux et champs références |
X |
|||||
tableau croisé Decision Cube et code source de Decision Cube |
X |
|||||
Pilotes SQL Links natifs pour Oracle, SQL Server, InterBase, Sybase, Informix et DB2 |
X |
|||||
1.1.5 |
Installation |
|||||
La version de Delphi 3 peut occuper jusqu’à 110 Mo en installation complète,
La version de Delphi 5 peut occuper jusqu’à 190 Mo en installation complète,
Fichiers programme : 125 Mo,
Fichiers partagés : 48 Mo,
BDE et SQL : 13 Mo,
Module base de données : 4 Mo
1.2 |
L ’environnement de développement ![]() |
1.2.1 |
L’interface graphique |
L'environnement de développement intégré comporte :
- une barre de menu,
- une barre d'icônes,
- des fenêtres permettant de réaliser la totalité des opérations de développement.
Description de l'écran principal
L'écran principal se compose de 4 fenêtres distinctes et indépendantes :
- • Une fenêtre contenant les menus et les différentes icônes ;
- • Une fenêtre "inspecteur d'objet" dont le rôle sera précisé ultérieurement ;
- • Une fenêtre dans laquelle se réalisera la construction de l'interface graphique ;
- • Une fenêtre, en grande partie cachée par la fenêtre précédente, qui est l'éditeur de code. Composition de l'écran de développement :
En haut la barre de menu et la barre d'icônes, à gauche, l'inspecteur d'objet, à droite la fenêtre de création de l'interface graphique qui cache en partie l'éditeur de code.
1.2.2 |
La Barre « Menu » |
La barre de menu permet d'accéder à l'ensemble des fonctionnalités de l'environnement de développement. Les fonctions les plus utilisées se retrouvent, sous forme d'icônes dans la partie gauche de la barre d'icônes.
1.2.2.1 |
Menu " Fichier" |
Le menu Fichier permet d'ouvrir, d'enregistrer, de fermer et d'imprimer des projets et des fichiers existants ou nouveaux. Il permet aussi d'ajouter de nouvelles fiches et de nouvelles unités au projet ouvert. Le menu Fichier comporte les commandes suivantes :
Commandes |
Description |
Nouveau |
Ouvre la boîte de dialogue Nouveaux éléments contenant les nouveaux éléments pouvant être créés. |
Nouvelle application |
Crée un nouveau projet contenant une fiche, une unité et un fichier .DPR. |
Nouvelle fiche |
Crée et ajoute une fiche vierge au projet. |
Nouveau cadre |
Crée un cadre « FrameX », conteneur de composants (BD, images, …) |
Ouvrir |
Utilise la boîte de dialogue Ouvrir pour charger dans l'éditeur de code un projet, une fiche, une unité, ou un fichier texte existant. |
Ouvrir un projet |
Utilise la boîte de dialogue Ouvrir pour charger un projet existant. |
Réouvrir |
Affiche un menu en cascade contenant la liste des projets et modules qui viennent d'être fermés. |
Enregistrer |
Enregistre le fichier en cours sous son nom actuel. ![]() |
Enregistrer sous |
Enregistre le fichier en cours sous un nouveau nom, en incluant les modifications apportées aux fichiers du projet |
Enregistrer projet sous |
Enregistre le projet en cours sous un nouveau nom. |
Tout enregistrer |
Enregistre tous les fichiers ouverts (ceux du projet et des modules en cours). |
Fermer |
Ferme la fenêtre active et le fichier unité associé. |
Tout fermer |
Ferme tous les fichiers ouverts. |
Utiliser unité |
Ajoute l'unité sélectionnée à la clause uses du module actif. |
Imprimer |
Dirige le fichier actif vers l'imprimante. |
Quitter |
Ferme le projet ouvert et quitte Delphi. |
Un projet est un ensemble de fichiers constituant une application. Au démarrage, Delphi ouvre un nouveau projet par défaut. On peut utiliser ce projet, ouvrir un projet existant ou lancer un projet différent en utilisant l'un des modèles de projet prédéfinis de Delphi
1.2.2.2 Menu "Edition"
Les commandes du menu Edition permettent de manipuler du texte et des composants lors de la phase de conception. Le menu Edition comporte les commandes suivantes :
Commandes |
Description |
(Défaire |
Annule la dernière action effectuée ou récupère la dernière suppression |
Refaire |
Restitue la dernière action annulée |
Couper |
Supprime l'élément sélectionné et le place dans le Presse-papiers |
Copier |
Place une copie de l'élément sélectionné dans le Presse-papiers et laisse l'original à sa place |
Coller |
Copie le contenu du Presse-papiers dans l'éditeur de code, dans la fiche active ou dans le menu actif. |
Supprimer |
Supprime l'élément sélectionné ![]() |
Tout sélectionner |
Sélectionne tous les composants de la fiche |
Aligner sur la grille |
Aligne les composants sélectionnés sur le point de grille le plus proche |
Mettre en avant-plan |
Place le composant sélectionné à l'avant-plan |
Mettre en arrière-plan |
Place le composant sélectionné à l'arrière-plan |
Aligner |
Aligne les composants |
Taille |
Redimensionne les composants |
Echelle |
Redimensionne tous les composants de la fiche |
Ordre de tabulation |
Modifie l'ordre de tabulation des composants sur la fiche active |
Ordre de création |
Modifie l'ordre de création des composants non visuels |
Basculer l’enfant |
Inverser l’alignement Lecture gauche vers droite => droite vers gauche |
Verrouiller contrôles |
Fixe les composants de la fiche à leur position actuelle |
Ajouter à l'interface |
Définit une nouvelle méthode, un nouvel événement ou une nouvelle propriété pour un composant ActiveX. |
1.2.2.3 Menu "Chercher"
Les commandes du menu Chercher permettent de localiser du texte, des erreurs, des objets, des unités, des variables et des symboles dans l'éditeur de code.
Commandes |
Description |
Chercher |
Recherche le texte spécifié, et met en surbrillance la première occurrence trouvée dans l'éditeur de code. |
Chercher dans les fichiers |
Recherche le texte spécifié, affiche chaque occurrence dans une fenêtre en bas de l'éditeur de code. |
Remplacer ![]() |
Recherche le texte spécifié et le remplace par le nouveau texte |
Occurrence suivante |
Répète la recherche |
Recherche incrémentale |
Recherche du texte au fur et à mesure que vous le saisissez |
Aller à ligne |
Place le curseur sur le numéro de ligne spécifié |
Erreur d'exécution |
Recherche la dernière erreur d'exécution |
Scruter symbole |
Recherche le symbole spécifié |
1.2.2.4 Menu "Voir"
Les commandes du menu Voir permettent d'afficher ou de cacher certains éléments de l'environnement Delphi et d'ouvrir des fenêtres appartenant au débogueur intégré.
Commandes |
Description |
Gestionnaire de projet |
Affiche le gestionnaire de projet |
Inspecteur d'objets |
Affiche l'inspecteur d'objet |
Liste à faire |
Affiche la liste enregistrée des tâches à effectuer par les développeurs |
Palette d'alignement |
Affiche la palette d'alignement |
Explorateur |
Affiche le scruteur d'objet ‘globaux’, de ‘classes’ et des ‘unités’ |
Explorateur de code |
Affiche l’éditeur de texte |
Liste de composants |
Affiche la boîte de dialogue Composants |
Liste de fenêtres |
Affiche la liste des fenêtres ouvertes |
Fenêtre de déboguage |
|
Bureau ![]() |
|
Basculer Fiche/Unité |
Bascule entre la fiche et la fenêtre unité |
Unités |
Affiche la boîte de dialogue Voir unité |
Fiches |
Affiche la boîte de dialogue Voir fiche |
Bibliothèque de types |
Affiche la fenêtre de l'éditeur de bibliothèques de types |
Nouvelle fenêtre d'édition |
Ouvre une nouvelle fenêtre de l'éditeur de code |
Barre d'outils |
Affiche ou cache la barre d'outils |
Points d’arrêt |
Affiche la fenêtre Points d’arrêt |
Pile d'appels |
Affiche la fenêtre Pile d'appels |
Points de suivi |
Affiche la fenêtre Liste des points de suivi |
Variables locales |
Affiche la fenêtres des variables locales avec leur valeur |
Threads |
Affiche la fenêtre Etat thread |
Modules |
Affiche la fenêtre Modules |
Journal d’évènements |
|
CPU |
Présente un aspect de bas niveau différent de l'exécution de l'application : Le volet de désassemblage affiche les instructions assembleur désassemblées à partir du code machine de votre application. |
Le volet d'affichage de la mémoire affiche toute portion de la mémoire accessible au module exécutable en cours de chargement. Par défaut, la mémoire est présentée sous forme d'octets hexadécimaux. Le volet de la pile machine affiche le contenu en cours de la pile du programme. Le volet des registres CPU affiche les valeurs en cours des registres du CPU. Le volet des indicateurs affiche les valeurs en cours des indicateurs du CPU. |
|
FPU ![]() |
Affiche le contenu de l'unité virgule flottante du CPU |
1.2.2.5 Menu "Projet"
Le menu Projet permet de compiler ou de construire votre application. Un projet doit être ouvert.
Commandes |
Description |
Ajouter au projet |
Ajoute un fichier au projet |
Supprimer du projet |
Supprime un fichier du projet |
Importer une bibliothèque de types |
Importe une bibliothèque de types dans un projet |
Ajouter au référentiel |
Ajoute un projet au référentiel d'objets |
Voir le source |
Affiche le fichier projet dans l’éditeur de code |
Ajouter un nouveau projet |
Affiche la fenêtre ‘nouveau’ pour un choix de projet |
Ajouter un projet existant |
Affiche fenêtrre de dialogue permettant de choisir un projet |
Compiler ‘ …………….’ |
Compile tout code source ayant été modifié depuis la dernière compilation |
Construire ‘ …………….’ |
Compile tous les éléments du projet, que le code ait ou non été modifié |
Vérifier la syntaxe |
Compile le projet sans le lier. |
Information |
Affiche les informations de construction et l'état de la construction du projet |
Compiler tous les projets |
Compile tout code source ayant été modifié depuis la dernière compilation |
Construire tous les projets |
Compile tous les éléments des projets, que le code ait ou non été modifié |
Options de déploiement Web |
Effectue le paramétrage nécessaire pour déployer votre contrôle ActiveX ou votre fiche ActiveForm terminé sur votre serveur web. ![]() |
Déployer pour le Web |
Après le paramétrage du déploiement web et la compilation de votre projet, déploie votre contrôle ActiveX ou votre fiche ActiveForm terminé. |
Options |
Ouvre la boîte de dialogue Options de projet. |
1.2.2.6 Menu "Exécuter"
Le menu Exécuter contient des commandes permettant de déboguer un programme depuis Delphi. Les commandes suivantes constituent les fonctionnalités de base du débogueur intégré :
Commandes |
Description |
Exécuter |
Compile et exécute l'application |
Attacher au processus |
Affiche la liste des processus exécutés sur l'ordinateur local pour effectuer un choix |
Paramètres |
Spécifie les paramètres de démarrage de l'application |
Recenser le serveur ActiveX |
Recense le projet dans la base des registres de Windows. Disponible quand le projet en cours est un projet ActiveX. |
Dé-recenser le serveur ActiveX |
Supprime le projet la base des registres de Windows. Disponible quand le projet en cours est un projet ActiveX. |
Pas à pas |
Exécute le programme ligne par ligne, évite les appels de procédures en les exécutant comme une seule unité |
Pas à pas approfondi |
Exécute le programme ligne par ligne, en entrant dans les procédures et en suivant l'exécution à chaque ligne |
Jusqu’à la prochaine ligne |
Exécute le programme en s'arrêtant à la prochaine ligne de code exécutable |
Jusqu'au curseur |
Exécute le programme jusqu'à ce que le débogueur atteigne la ligne où se trouve le curseur dans l'éditeur de code |
Exécuter jusqu’au retour |
Le processus s'arrête sur l'instruction qui suit immédiatement l'instruction qui a appelé la fonction en cours. |
Montrer le point d'exécution |
Positionne le curseur au point d'exécution dans une fenêtre d'édition |
Suspendre le programme |
Suspend temporairement l'exécution d'un programme |
Réinitialiser le programme ![]() |
Stoppe l'exécution du programme et le réinitialise afin de pouvoir le relancer |
Inspecter |
Ouvre la fenêtre Inspecteur relative au terme en surbrillance |
Evaluer/Modifier |
Ouvre la boîte de dialogue Evaluation/Modification qui permet d'évaluer ou de modifier la valeur d'une expression |
Ajouter point de suivi |
Ouvre la boîte de dialogue Propriété du point de suivi qui permet de créer ou de modifier des points de suivi |
Ajouter point d'arrêt |
Spécifie des emplacement du code où l'exécution du programme doit s'arrêter |
Remarque :
Les commandes du débogueur intégré deviennent accessibles lorsque les informations symboliques de débogage ont été générées pour le projet en cours.
1.2.2.7 Menu "Composant"
Les options du menu Composant sont :