Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

Модуль CRT

Модуль CRT содержит константы, переменные, процедуры и функции, предназначенные для работы с консолью. Если стандартные процедуры ввода/вывода реализуются через операционную систему, то модуль CRT позволяет работать с BIOS и непосредственно с видеопамятью.

Для подключения модуля надо написать в начале программы:

Uses CRT;

При работе с экраном через модуль CRT весь экран разбивается на отдельные строки, а каждая строка - на отдельные позиции, в каждую из которых можно поместить один символ (в том числе и пробел). Таким образом, весь экран разбивается на символьные позиции. Количество символьных позиций по ширине и по высоте называется разрешением текстового режима монитора.

Положение каждого элемента экрана определяется его координатами X (номер столбца, в котором расположен элемент) и Y (номер строки). Для каждого элемента можно задать цвет фона (задний план - TextBackGround) и цвет символа (передний план - TextColor). Кроме того, символ можно сделать мерцающим. Вся эта информация - атрибуты символа - помещается в одном байте следующим образом:

Биты

7

6

5

4

3

2

1

0

М

Ф

Ф

Ф

С

С

С

С

Буквой М обозначен бит мерцания (символ мерцает, если в этом бите установлена 1), буквами Ф - биты, в которые записывается код цвета фона (биты 4-6), буквами С - биты, в которые помещается код цвета символа (биты 0-3).

Подпись:

Модуль CRT позволяет работать не только со всем экраном, но и выделять в нем прямоугольные окна. Любое окно задается своим левым верхним и правым нижним углом. Эти углы, так же как и положение любого объекта на экране задаются двумя координатами X и Y. При работе в окне координаты отсчитываются от левого верхнего угла окна. При запуске программы выделенное окно совпадает по размеру со всем экраном. По умолчанию установлен режим работы адаптера - 25 строк по 80 позиций в каждой, соответственно координаты такого окна - (1,1) и (80,25).

НЕ нашли? Не то? Что вы ищете?

Коды цветов

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

Мерцание символа

Цвета с кодами от 0 до 7 включительно можно использовать как для символов, так и для фона. Остальные цвета и код мерцания можно использовать только для символов.

Процедуры модуля CRT

ClrScr - Очистка экрана: процедура очищает текущее окно, заполняя его цветом фона, и помещает курсор в его верхний левый угол с координатами (1,1).

TextMode(Mode: Word) - задание текстового режима: устанавливает текстовый режим, заданный параметром Mode, увеличивает текущее окно до целого экрана. Некоторые значения параметра Mode:

0

40х25 черно-белый для цветного адаптера

1

40х25 цветной для цветного адаптера

2

80х25 черно-белый для цветного адаптера

3

80х25 цветной для цветного адаптера

TextBackground(Color: Byte) - задание цвета фона. Для того, чтобы все окно изменило цвет фона, необходимо после данной процедуры вызвать процедуру ClrScr, иначе будет изменяться лишь фон отдельных элементов при их вводе или выводе.

TextColor(Color: Byte) - задание цвета символов и параметра мерцания.

Window(x1,y1,x2,y2: Byte) - задает размеры окна на экране и помещает курсор в левый верхний угол окна с координатами (1,1).

NoSound - Выключает источник звука

Sound (Hz: Word) - Запускает источник звука с частотой Hz герц

Delay(Ms: Word) - Задает задержку выполнения программы в миллисекундах.

GotoXY(X,Y:Byte) - Перемещает курсор к элементу экрана с заданными координатами (координаты отсчитываются от левого верхнего угла текущего окна).

DelLine - Удаляет строку, в которой находится курсор.

InsLine - Вставляет пустую строку на экране в месте расположения курсора и заполняет ее цветом фона.

ClrEol - Удаляет все символы от курсора (включительно) до конца строки.

LowVideo - Включает низкую интенсивность символов.

HighVideo - Включает высокую интенсивность символов.

Функции модуля CRT

WhereX: Byte - возвращает текущую координату X курсора.

WhereY: Byte - возвращает текущую координату Y курсора.

Readkey: Char - считывает символ с клавиатуры.

KeyPressed: Boolean - анализирует нажатие клавиши клавиатуры (за исключением вспомогательных клавиш Shift, Alt, NumLock и т. п.). Результат - True, если клавиша на клавиатуре нажата, False - клавиша не нажата.

Примеры программ:

1.

uses crt;

var i, x,y, x1,y1:byte;

BEGIN

window(1,1,80,25);

textbackground(15);

clrscr;

textbackground(3);

window(15,5,65,20);

clrscr;

textcolor (4);

gotoxy(20,7);

writeln('H E L L O!');

END.

2.

uses crt;

var i, x,y, x1,y1:byte;

BEGIN HideCursor;

window(1,1,80,25);

textbackground(0);

clrscr;

x:=1; y:=1; x1:=80; y1:=25;

for i:=1 to 7 do

begin

textbackground(i);

window(x, y,x1,y1);

clrscr;

delay(500);

x:=x+5; y:=y+2; x1:=x1-5; y1:=y1-2;

end;

repeat until keypressed;

window(1,1,80,25);

textbackground(0);

clrscr;

ShowCursor;

END.

Особенности модуля CRT при работе в PascalABC

Добавлены следующие процедуры:

HideCursor - Скрывает текстовый курсор.

ShowCursor - Делает текстовый курсор видимым.

CRTWindowSize(w, h: integer) - Устанавливает размер текстового окна в символах.

TextSize(sz: integer) - Устанавливает размер символов в пунктах (по умолчанию 10 пунктов).

TextNormal - Устанавливает нормальный стиль символов.

TextBold - Устанавливает жирный стиль символов.

ScrollingOff - Отключает прокрутку при выводе.

ScrollingOff - Включает прокрутку при выводе.

Следующие процедуры не выполняются. Оставлены для совместимости:

Sound(hz: integer);

NoSound;

TextMode(i: integer);