Delphi premier programme


Hello World en Delphi 10.3

Décrit comment créer un premier programme avec Delphi 10.3

Au fur et à mesure des version, Delphi c’est énormément enrichie en fonctionnalités ce qui a sans doute augmenté sa complexité même si ce dernier reste sans doute un des EDI   les plus simples à utiliser. Voyons comment réaliser le fameux Hello World avec la dernière version disponible à ce jour.


 Présentation

Les versions actuelles de Delphi permettent de développer des applications aussi bien sur des plateformes Windows 32 et 64 bits, MacOS, iOS et Android.

D’autre part, dès l’origine, les applications Delphi (et Delphi lui même) se construisaient sur une librairie de composants nommée VCL. Cette dernière s’appuie énormément sur l’API Windows la rendant difficilement portable sur d’autres systèmes. Pour rendre les applications portables, il a fallut concevoir pour Delphi une nouvelle librairie de composants nommée FireMonkey (FMX). Si vous désirez développer des applications multi-plateformes, vous devrez donc choisir FMX pour vos projets.

Lorsque vous choisissez de réaliser un nouveau projet vous devrez donc choisir entre ces différentes architecture ce qui peut perturber le débutant.

Dans ce tout premier programme, nous resterons simple et nous choisirons comme cible un programme Windows 32 bits (option par défut) et nous utiliserons les composants de la VCL.

Remarque : Choisir des cibles autres que Windows demande à résoudre quelques problèmes de configuration notamment pour la cible Apple car vous aurez besoin d’un Mac. Si l’on débute avec Delphi il est donc fortement conseillé de commencer par des applications Windows qui ne demanderont pas de configuration particulières.

 Le programme

Nous allons réaliser le fameux programme "Hello World". Comme Delphi définit par défaut des applications graphiques, notre programme sera composé d’une fenêtre principale, d’un bouton et d’une boite de message s’affichant lors du clique sur bouton.

Lançons Delphi. Si vous utilisez Delphi pour la première fois, vous devriez voir la fenêtre suivante :

Dans un premier temps, le seul paramètre à vérifier est le champ Dossier projet par défaut. Il s’agit du répertoire racine de tous vos projets. Si celui proposé ne vous conviens pas, modifiez-le.

Dès que la fenêtre principale de Delphi est affichée, vous devriez voir un onglet ouvert nommé Page d’accueil avec trois choix d’affichages Démarrer ici, Tutoriels et Documentation.

Vous pourrez trouver des infos utiles par la suite mais pour ce premier exemple nous n’utiliserons pas cet onglet et pouvez le fermer.

Remarque : Vous pourrez toujours l’afficher à partir de l’option de menu Voir —> Page d’accueil.

Créons notre premier projet avec l’option Fichier —> Nouveau —> Application VCL Windows -Delphi.

Vous devriez avoir l’écran suivant :

Vous avez maintenant votre écran qui est divisé entre plusieurs panneaux.

  1. Structure : affiche sous forme d’arborescence l’ensemble des composants utilisés. Pour l’instant il n’y a que la fenêtre de l’application nommée Form1.
  2. Inspecteur d’objets : Affiche toutes les propriétés de l’objet courant, pour l’instant Form1.
  3. Unit1 la vue principale qui affiche la fenêtre en cours de conception. Elle dispose en bas à droites de trois onglets : Code, Conception et Historique. En cliquant sur Code vous pourrez afficher le code définissant la fenêtre.
  4. Projets : affiche l’ensemble des fichiers composant le projet ainsi que sa configuration et la ou les cibles choisies Win32 par défaut.
  5. palette va vous permettre de choisir les composants à ajouter à votre interface.

Si vous cliquez sur l’icône Code en bas de l’écran, vous pourrez voir le code correspondant :

  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6.   Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  7.   Vcl.Controls, Vcl.Forms, Vcl.Dialogs;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.   private
  12.     { Déclarations privées }
  13.   public
  14.     { Déclarations publiques }
  15.   end;
  16.  
  17. var
  18.   Form1: TForm1;
  19.  
  20. implementation
  21.  
  22. {$R *.dfm}
  23.  
  24. end.

Télécharger

On retruve la structure standard d’une application en langage Delphi (évolution du Turbo Pascal) avec une partie interface et une partie implementation.

Il y a une classe Tform1 qui hérite de TForm qui est une classe de la VCL. Puis une instance Form1 a été définie. Par défaut, une instance de la classe sera créee au lancement de l’application sans que l’on ait à spécifier l’appel d’un constructeur (Create).

Maintenant, même si ce n’est pas très utile pour un programme aussi petit nous allons donner un nom plus explicite à notre fenêtre pour apprendre à modifier les propriétés. Repassons en mode conception pour afficher la fenêtre.

Nous allons aller dans le panneau Inspecteur d’objet qui affiche la fenêtre et l’on va chercher la propriété Name. Nous allons saisir "frmMain" car il s’agira de la fenêtre principale de l’application.

Le code va se mettre à jour automatiquement. Nous allons également modifier la propriété Caption qui par défaut a pris le même nom que l’objet. Saisissons par exemple le texte "Première application Delphi".

Nous pourrions exécuter le programme mais avant, nous allons le sauvegarder.
L’option se trouve dans le menu : Fichier —> Enregistrer le projet sous...

Attention : Delphi, par défaut, ne créé pas de dossier spécifique pour le projet et le premier fichier qu’il va sauvegarder n’est pas le fichier projet mais celui de l’unité définissant la fenêtre.

Créez d’abord un répertoire spécifique au projet.

Positionnez-vous sur ce dernier puis donnez comme nom de fichier frm_main

Une fois validé, une autre fenêtre vous permet de saisir cette fois le nom du projet.

Nommez-le helloworld par exemple. Ce nom correspondra également au nom de l’exécutable qui sera généré.

Vous pouvez exécuter le programme si vous désirez à l’aide du bouton suivant :

Cela devrait afficher une fenêtre vide pour l’instant.

Ajoutons maintenant un bouton sur la fenêtre. Mettez-vous en mode conception pour afficher la fenêtre puis, à partir du panneau Palette se trouvant à droite, dans la rubrique Standard faite glisser un composant TButton sur la fenêtre.

Comme nous l’avons fait pour la fenêtre précédemment, nous allons donner un nom au bouton "btnMessage" et un libelle "Message" en modifiant repectivement les propriétés Name et Caption dans le panneau Inspecteur d’objets

Dans la fenêtre de conception, faites un double clique sur le bouton. Vous devriez vous retrouver dans le code avec un entête de méthode généré.

  1. procedure TfrmMain.btnMessageClick(Sender: TObject);
  2. begin
  3.  
  4. end;

Télécharger

Vous n’avez plus qu’à saisir le code suivant entre les lignes begin et end.

showMessage( 'Hello World' );

Notre programme est terminé. Vous devriez pouvoir l’exécuter. Ce qui donne à l’écran après avoir cliqué sur le bouton "Message" :

Vous pouvez maintenant refermer l’application et retourner dans Delphi et voir le contenu du projet.

Le code total de l’application devrait être le suivant :

  1. unit frm_main;
  2.  
  3. interface
  4.  
  5. uses
  6.   Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  7.   Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
  8.  
  9. type
  10.   TfrmMain = class(TForm)
  11.     btnMessage: TButton;
  12.     procedure btnMessageClick(Sender: TObject);
  13.   private
  14.     { Déclarations privées }
  15.   public
  16.     { Déclarations publiques }
  17.   end;
  18.  
  19. var
  20.   frmMain: TfrmMain;
  21.  
  22. implementation
  23.  
  24. {$R *.dfm}
  25.  
  26. procedure TfrmMain.btnMessageClick(Sender: TObject);
  27. begin
  28.   showMessage( 'Hello World' );
  29. end;
  30.  
  31. end.

Télécharger

Nous voyons le code généré par Delphi ainsi que la seule ligne que nous avons due saisir.

Important : Dans la structure de la déclaration de la classe, vous ne devrez pas toucher au code se trouvant avant le mot clé private. Cette zone est réservé uniquement à du code généré.

Dans le panneau Structure vous pourrez voir l’arborescence du code lorsque le code est affiché et l’arborescence des composants se trouvant dans la fenêtre lorsque vous êtes en mode Conception.

Sur le panneau Projets se trouvant en haut à droite, vous trouverez l’organisation du projet. Lorsque vous ajouterez des unités (fichiers sources), vous pourrez les voir dans cette liste. C’est dans ce panneau que vous pourrez également définir les plateformes cibles de vos projets grace aux menus contextuel. Mais Pour vos premiers programmes, il vaudra mieux laisser ces options par défaut.

 Source du fichier projet

Si vous avez défini plusieurs fenêtres pour votre application, vous aurez une unité donc un fichier source par fenêtre. Il y a également un autre fichier source important qui a été généré par Delphi. Il s’agit du fichier principal du projet. Il porte le nom du projet avec l’extension .dpr, dans notre cas helloworld.dpr. Vous pourrez l’afficher à partir du menu : Projet —> Voir le source.

  1. program helloworld;
  2.  
  3. uses
  4.   Vcl.Forms,
  5.   frm_main in 'frm_main.pas' {frmMain};
  6.  
  7. {$R *.res}
  8.  
  9. begin
  10.   Application.Initialize;
  11.   Application.MainFormOnTaskbar := True;
  12.   Application.CreateForm(TfrmMain, frmMain);
  13.   Application.Run;
  14. end.

Télécharger

Il est déconseillé de modifier ce fichier si l’on n’est pas sur de ce que l’on fait car le programme pourait ne plus fonctionner. Par contre il peut être intéressant de le visualiser. C’est dans ce code que les fenêtres définies sont créées grâce à la méthode createForm(). Vous devriez avoir autant de lignes de ce type que de fenêtres définies dans votre application.

 Récupérer le fichier exécutable

Pour récupérer l’exécutable, il vous suffira d’aller le chercher dans un sous dossier du dossier de votre projet et de le copier sur un autre PC. Les programmes générés par Delphi sont en code natif et n’ont pas besoin d’autres fichiers pour s’exécuter.

Dossier principal du projet :

Sous-dossier contenant l’exécutable généré :

Remarque : Le nom du chemin dans lequel se trouve les fichiers compilés et l’exécutable dépendra de la cible et du mode. Cela permet à partir d’un même projet de générer des exécutables différents en fonction de la plateforme.
Remarque : Les fichiers avec l’extension .dcu correspondent à la version compilée de chaque unité. Cest l’équivalant des fichiers .obj du langage C. Vous aurez donc autant de .dcu que .pas après compilation.

 Conclusion

Nous venons de voir comme il était facile de développer avec Delphi même si le programme réalisé était très basique. Cette version gratuite est aussi complète pour développer tout type de programme. Lisez simplement la licence d’utilisation pour vérifier les limites d’utilisation du produit.

Article n° 141

Crée par: chris

Créé le: 2 septembre 2019

Modifié le: 2 septembre 2019

Nombre de visites: 2315

Popularité: 14 %

Popularité absolue: 1

Mots clés de cet article


SPIP

2003-2024 LePpf
Plan du site | | RSS 2.0 | Sur YouTube

Visiteurs connectés : 2

Nombre moyen de visites quotidiennes sur le site: 197