Стандартные модули-Модуль Crt

Модуль Crt используется для работы с экраном в текстовом режиме.

Текстовый режим характеризуется количеством строк на экране и количеством символов в каждой из них. По умолчанию устанавливается режим 25х80 (25 строк по 80 символов), при этом и строки, и символы нумеруются с единицы. Ну, а поле 25х80 строк можно представить так:
Модуль Crt

При выводе на экран каждого символа можно задать его цвет, яркость и цвет фона. Модуль Crt содержит следующие процедуры, позволяющие управлять этими параметрами:

LowVideo – устанавливает режим минимальной яркости выводимых на экран символов;

NormVideo – устанавливает режим нормальной яркости выводимых на экран символов;

HighVideo – устанавливает режим максимальной яркости выводимых на экран символов;

TextColor(c) – устанавливает цвет символов c, все возможные значения приведены в табл. 6.1;

TextBackGround(c) – устанавливает цвет фона c, который может принимать значения от 0 до 7.

Цветовые константы

Цвет Константа Значение
Черный Black 0
Синий Blue 1
Зеленый Green 2
Голубой Cyan 3
Красный Red 4
Фиолетовый Magenta 5
Коричневый Brown 6
Светло-серый LightGray 7
Темно-серый DarkGray 8
Ярко-синий LightBlue 9
Ярко-зеленый LightGreen 10
Ярко-голубой LightCyan 11
Розовый LightRed 12
Малиновый LightMagenta 13
Желтый Yellow 14
Белый White 15
Мерцание символа Blink 128

Каждый следующий символ выводится с заданными параметрами до тех пор, пока они не будут изменены повторным применением описанных процедур.

Для того чтобы вывести следующий символ не прямо за предыдущим (как обычно и происходит), а в любой указанной позиции экрана, необходимо переместить курсор в эту позицию. Для этого используется процедура GotoXY:

GotoXY(x,y) – перемещает курсор в позицию с координатами (x,y).

Как Вы уже знаете, очистку экрана осуществляет функция ClrScr.

ClrScr – выполняет очистку экрана в текстовом режиме и устанавливает курсор в левый верхний угол.

Кроме того, в модуле Crt содержатся процедуры и функции для управления чтением клавиатуры и звуковым генератором.

KeyPressed – функция, которая возвращает значение true, если была нажата какая-нибудь клавиша, и false в противном случае;

ReadKey – функция, которая считывает код символа с клавиатуры;

Delay(t) – вызывает задержку выполнения программы на заданное число миллисекунд t;

Sound(f) – включает звук с частотой f;

NoSound – выключает звук.

Работа со звуком происходит по схеме Sound-Delay-NoSound.

В модуле Crt также находятся некоторые служебные переменные, в которых содержится информация, необходимая для управления выводом на экран. Например, для нас представляет интерес переменная TextAttr, которая содержит цветовые атрибуты текста – цвет фона и цвет символов:

TextAttr:=<цвет-фона>*16+<цвет символа>