Recherche
1 connecté

  Actuellement : 10 commentaires DELPHI

DELPHI

Quelques bases du language pascal

 

I Créer une application console

                a) Cékoi une appli console?

                                C'est une application qui ressemble à une application DOS, même si ça ne peut tourner que sous Windows. En gros, on peut recevoir du texte de l'utilisateur, et lui en envoyer, comme dans une console quoi (pas une console de jeu; une console comme un terminal, comme sous irc, par exemple).

 

                b) Création de l'appli

                                Bon, il suffit de créer une nouvelle application, et de supprimer la Form1 (et Unit1 par la même occasion), pour commencer. Donc:

                                - Menu Fichier | Nouvelle Application

                                - Cliquer sur la fenêtre qui contient le code source. Ensuite, cliquer-droit sur ce code source, et choisir "Fermer la page". Ne pas sauver les modifs.

 

                                Il faut maintenant afficher le source de l'application elle-même. En fait, tt à l'h on avait le source de Unit1. Mais un projet de base contient deux fichiers sources: Project1.pas (nom par défaut) et Unit1.pas (idem, nom par défaut). Dans une application console, seul Project1.pas suffit. Pour l'afficher:

                                - Chercher le bouton "Voir une unité" (ou faire CTRL+F12)

                                - Double-cliquer sur project1

 

                                Voilà, normalement on a ça:

 

program Project1;

 

uses

  Forms;

 

{$R *.RES}

 

begin

  Application.Initialize;

  Application.Run;

end.

 

                                Bon, mais une application console est encore plus simple que ça. Remplacer tout ça, par ceci:

 

program Project1;

 

{$APPTYPE CONSOLE}

 

begin

 

end.

 

                                On a donc un programme vide, de type console. La directive {$APPTYPE console} dit à Delphi que l'application est de type console. En lançant le programme avec F9, on a une fenêtre MS-DOS qui s'affiche, mais il ne se passe rien (vu que le programme est vide!).

 

                                Notez quelques différences avec ce qu'on a d'habitude dans Unit1:

                                - en haut du fichier source, on a "program", et non pas "unit". Parceque c'est le fichier qui est exécuté. Dans un programme normal, on a aussi ce fichier, mais il utilise Unit1 (d'où un "uses Unit1;"). Et nous, on modifie Unit1.

                                - On a un bloc "begin .. end", qui se termine par un point et non par un point-virgule. C'est parceque c'est le bloc principal de l'application. On peut mettre du code source dedans. Tout ce qu'on y mets est exécuté dans l'ordre. Ainsi, dans une application normale, on a du code qui crée la fenêtre (Form1)!

 

                                Voilà pourquoi j'ai décidé de vous faire créer une appli console, c'est pour avoir une application la plus simple possible.

 

                c) Affichage d'un texte dans la console

                                Bon mais notre programme, il ne fait rien. Donc il faut rajouter du code source dans le bloc "begin .. end", pour qu'il se passe quelque chose. On va afficher du texte. Rajouter (entre le begin et le end):

 

writeln('Hello world!');

 

                                Donc le programme doit maintenant être comme ça:

 

program Project1;

 

{$APPTYPE CONSOLE}

 

begin

  writeln('Hello world!');

end.

 

                                Voilà, faire F9 pour tester. Bon, ça compile (compiler = créer l'exe), mais on n'a pas le temps de voir le texte s'afficher, la fenêtre se ferme avant. On va rajouter une ligne "readln;" pour que l'ordinateur attende qu'on appuie sur ENTREE avant de continuer (et donc de fermer l'appli). Ca donne ça (j'ai pas tout mis hein):

 

begin

  writeln('Hello world!');

  readln;

end.

 

                                Voilà. Faire F9. Pour fermer le prog, appuyer sur ENTREE :)

 

                d) Ce qu'on a appris

                                - Un programme très simple (ici une application console) n'est composé que d'un fichier source, qui contient une ligne "program <nom du programme>" au début, puis un bloc "begin .. end" fermé par un point ".".

 

                                - On sait comment créer une application console

 

                                - Dans un programme, les lignes de codes sont exécutées une par une dans l'ordre, en commançant par ce qui est juste en dessous du begin, jusqu'au end.

 

                                - Dans une appli console, "writeln" permet d'afficher du texte, et "readln" d'attendre que l'utilisateur appuie sur entrée (en fait, c'est bcp plus compliqué que ça, mais on va rester simple pour l'instant)

 

                                - On met toujours un point-virgule après chaque ligne de commande!

 

                e) Exercices

                                Essayer d'afficher d'autres lignes comme "Comment ça va?", en rajoutant des readln de temps en temps. Tester tout ça de fond en comble. Exemple:

 

program Project1;

 

{$apptype console}

 

begin

  writeln('Bonjour!'); // Ecris le texte "Bonjour!" à l'écran

  readln;              // Attends que l'on presse la touche ENTREE

  writeln('Comment ça va?');

  writeln('Moi ça va bien. C''est cool!');

  readln;

  writeln('Bon a+');

  readln;

end.

 

                f) Notes

                                - Pour afficher un guillemet simple dans le writeln, il faut mettre deux guillemets simples (voir exemple plus haut: "c'est cool" devient "c''est cool")

                                - Pour rajouter un commentaire, il y a plusieurs solution, la plus simple étant de mettre "//". Tout ce qui est à droite de ces "//" ne sera pas lu par Delphi (voir exemple plus haut).

                                - J'ai mis les textes en bleu; cela peut être fait dans delphi en allant dans Outils | Options de l'éditeur (ou d'environnement selon la version de Delphi) | Couleurs, puis en sélectionnant "chaînes", et en mettant la couleur bleue. Perso je mets le bleu pour les chaînes, les nombres, et l'assembleur.