Turbo Pascal – Affichage du texte
- Turbo Pascal – Introduction au Turbo Pascal
- Turbo Pascal – Ecrire sur l’écran
- Turbo Pascal – Un peu de maths
- Turbo Pascal – Les commentaires
- Turbo Pascal – Les variables
- Turbo Pascal – Les constantes
- Turbo Pascal – Entrée de données
- Turbo Pascal – Structure conditionnelle
- Turbo Pascal – Les cas
- Turbo Pascal – Branchements
- Turbo Pascal – Les boucles
- Turbo Pascal – Procédures et fonctions
- Turbo Pascal – Les unités
- Turbo Pascal – Les tableaux
- Turbo Pascal – Les maths
- Turbo Pascal – Le traitement du texte
- Turbo Pascal – Affichage du texte
- Turbo Pascal – Le son
- Turbo Pascal – Graphismes
- Turbo Pascal – L’unité Graph et le texte
- Turbo Pascal – Les types personalisés
- Turbo Pascal – Les pointeurs
- Turbo Pascal – Les objets
- Turbo Pascal – Les ensembles
- ClrEol
- ClrScr
- DelLine
- GotoXY
- HighVideo
- InsLine
- LowVideo
- NormVideo
- TextBackground
- TextColor
- TextMode
- WhereX
- WhereY
- Window
- Les couleurs
- Les modes d’écran
On a vu à la page précédente comment traiter les chaînes de caractères avec Turbo Pascal. Nous
allons maintenant voir les différentes possibilités que nous offre ce langage pour les afficher
à l’écran.
Toutes ces procédures et fonctions nécessitent l’utilisation de l’unité crt. Vous
devez donc l’inclure en début de programme.
ClrEol
ClrEol efface la ligne où le curseur est placé, à partir de lui jusqu’à la fin de la ligne.
Exemple :
uses crt;
begin
writeln('Une ligne au dessus');
writeln('Une ligne au milieu');
writeln('Une ligne en dessous');
gotoXY(5, 2);{Voir ci-dessous pour gotoXY}
ClrEol; {On efface la ligne}
end.
ClrScr
ClrScr permet d’effacer l’écran.
Exemple :
uses crt;
begin
ClrScr;{On efface l'écran}
end.
DelLine
DelLine efface la totalité de la ligne du curseur, et décale toutes les lignes positionnées
en bas d’une ligne vers le haut
Exemple :
uses crt;
begin
writeln('1er ligne');
writeln('2ème ligne');
writeln('3ème ligne');
gotoXY(5, 2);{Voir ci-dessous pour gotoXY}
DelLine; {On efface la 2ème ligne}
end.
GotoXY
La syntaxe de GotoXY est la suivante :
GotoXY(X, Y : Byte);
GotoXY déplace le curseur à la Xème colonne et à la Yème
colonne.
Exemple :
uses crt;
begin
GotoXY(40, 12);{40ème colonnes et 12ème lignes}
write('*');
end.
HighVideo
HighVideo active la surbrillance, c’est à dire que le texte sera écrit avec une couleur
plus brillante que la normale.
Exemple :
uses crt;
begin
writeln('Texte ecrit normalement');
HighVideo;{On active la surbrillance}
writeln('Texte en surbrillance');
end.
InsLine
InsLine produit l’effet inverse de DelLine : InsLine insére une
ligne à partir de la ligne du curseur et décale toutes d’un cran vers le bas.
Exemple :
uses crt;
begin
writeln('1er ligne');
writeln('2ème ligne');
writeln('3ème ligne');
gotoXY(5, 2);
InsLine; {On insére une ligne}
end.
LowVideo
LowVideo produit l’effet contraire de HighVideo : au lieu d’activer la surbrillance,
LowVideo active une « sous-brillance ».
Exemple :
uses crt;
begin
writeln('Texte écrit normalement');
LowVideo;{On active la "sous brillance"}
writeln('Texte écrit moins fort');
end.
NormVideo
NormVideo permet de revenir au mode normal.
Exemple :
uses crt;
begin
HighVideo;
writeln('Texte écrit en surbrillance');
NormVideo;{Retour à la normale}
writeln('Texte normal');
end.
TextBackground
TextBackGround permet de définir la couleur de fond du texte. Voir ci-dessous pour le choix
des couleurs. Attention! Seul les 8 premières couleurs (0 à 7) sont possibles.
Exemple :
uses crt;
begin
TextBackground(Red);{Fond rouge}
writeln('Texte sur fond rouge');
end.
TextColor
TextColor définit la couleur du texte.
Exemple :
uses crt;
begin
TextColor(LightGreen);{Texte vert clair}
writeln('Ceci est un texte vert clair');
end.
TextMode
TextMode sélectionne un mode texte. Voir ci-dessous pour les différents modes disponibles.
Exemple :
uses crt;
begin
TextMode(CO40);{40 colonnes et 25 lignes}
writeln('Ceci est du texte');
end.
WhereX
WhereX renvoit la colonne où est placé le curseur.
Exemple :
uses crt;
begin
gotoXY(27, 1);
writeln('Le curseur est sur la ', WhereX, 'ème colonne');
{Renvoi 27}
end.
WhereY
WhereY est similaire à WhereY dans la mesure où celui-ci renvoi la ligne
où est placé le curseur et non pas la colonne.
Exemple :
uses crt;
begin
gotoXY(1, 12);
writeln('Le curseur est sur la ', WhereY, 'ème ligne');
{Renvoi 12}
end.
Window
Window crée une nouvelle fenêtre à l’écran. Voici la syntaxe :
Window(X1, Y1, X2, Y2 : Byte);
X1 et Y1 représentent les coordonnées du coin supérieur gauche, et
X2 et Y2 le coin inférieur droit.
Exemple :
uses crt;
begin
Window(10, 10, 25, 25);{Création d'une fenêtre}
Writeln('Ceci est du texte dans la fenêtre');
end.
Les couleurs
Si on ce limite à son utilisation classique, Turbo Pascal est limité à l’utilisation de 16 couleurs.
On peut alors utiliser son Index (son numéro), ou bien sa constante. Cette deuxième solution est
recommandée.
Voici les différentes couleurs :
| Index | Constante | Aperçu |
|---|---|---|
| 0 | Black | |
| 1 | Blue | |
| 2 | Green | |
| 3 | Cyan | |
| 4 | Red | |
| 5 | Magenta | |
| 6 | Brown | |
| 7 | LightGray | |
| 8 | DarkGray | |
| 9 | LightBlue | |
| 10 | LightGreen | |
| 11 | LightCyan | |
| 12 | LightRed | |
| 13 | LightMagenta | |
| 14 | Yellow | |
| 15 | White |
À noter que l’on peut faire clignoter une couleur en ajoutant 128 à son index, ou bien la constante
Blink.
Exemple :
uses crt;
begin
TextColor(Red + Blink);{Texte rouge clignotant}
writeln('Ce texte est rouge et il clignote');
end.
Les modes d’écran
5 modes textes sont disponibles. Comme pour les couleurs, ils est possibles d’utiliser l’index
ou la constante.
| Index | Constante | Description |
|---|---|---|
| 0 | BW40 | Noir et blanc, 40×25 |
| 1 | CO40 ou C40 | Couleur, 40×25 |
| 2 | BW80 | Noir et blanc, 80×25 |
| 3 | CO80 ou C80 | Couleur, 80×25 |
| 7 | Mono | Monochrome, 80×25 |