- 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, 40x25
|
|
1
|
CO40 ou C40
|
Couleur, 40x25
|
|
2
|
BW80
|
Noir et blanc, 80x25
|
|
3
|
CO80 ou C80
|
Couleur, 80x25
|
|
7
|
Mono
|
Monochrome, 80x25
|
|