Модуль CRT Программирование на Free. Pascal
Модуль CRT.ppt
- Количество слайдов: 18
Модуль CRT Программирование на Free. Pascal
CRT - Cathode Ray Tube, электронно-лучевая трубка Модуль CRT содержит описания констант, процедур и функций, обеспечивающих управление текстовым режимом работы монитора и звуковым генератором. Подключение модуля CRT производится директивой USES CRT, которая указывается в разделе описаний.
При работе в текстовом режиме экран монитора разбивается на строки, строки — на позиции, в каждую из которых можно поместить один символ. Положение символа на экране задается двумя координатами —X и Y. X — это номер позиции в строке, а Y — номер строки. По умолчанию размер экрана 50 строк по 80 символов. Координата верхнего левого угла – (1, 1). х у
Атрибут текста - text. Attr: integer; Для полного описания экранной позиции кроме символа следует задать еще и атрибут, содержащий информацию о цвете символа и фона на 7 экране. 6 5 4 3 2 1 0 Blink R G B H R G B мерца Цвет фона Цвет символа ние Основные цвета кодируются цифрами от 0 до 15, причем цвет текста может быть любым, а цвет фона - только от 0 до 7.
Имя Константа цвета Цвет Black 0 Черный Blue 1 Синий Green 2 Зеленый Cyan 3 Бирюзовый Red 4 Красный Magenta 5 Фиолетовый Brown 6 Коричневый Light. Gray 7 Светло-серый Dark. Gray 8 Темно-серый Light. Blue 9 Светло-синий Light. Green 10 Светло-зеленый Light. Cyan 11 Светло-бирюзовый Light. Red 12 Розовый Light. Magenta 13 Сиреневый Yellow 14 Желтый White 15 Белый Blink 128 Мерцание символа
Работа с цветом Text. Back. Ground(Color: Byte) - устанавливает цвет фона. Text. Color(Color: Byte) - устанавливает цвет символов. High. Video - устанавливает высокую интенсивность символов. Low. Video - включает низкую интенсивность символов. Norm. Video - выбирает первоначальное значение атрибута текста.
Работа с экраном Clr. Scr - очищает экран или окно и помещает курсор в верхний левый угол (заливка цветом фона). Clr. Eol - очищает строку от курсора до конца строки. Ins. Line - добавление пустой строки на экране. Del. Line - удаление текущей строки. Goto. XY(X, Y: Byte) - перемещает курсор в позицию (X, Y) экрана. Window(X 1, Y 1, X 2, Y 2: Byte) - определяет текстовое окно на экране. X 1, Y 1 — координаты левого верхнего угла, X 2, Y 2 — правого нижнего угла окна. В окне –своя система координат. Where. X - текущая координата Х курсора. Where. Y - текущая координата Y курсора.
Работа с клавиатурой Key. Pressed: Boolean Анализирует нажатие клавиши. Результат TRUE, если на клавиатуре нажата клавиша (кроме Alt, Ctrl и т. п. ), и FALSE в противном случае. Не задерживает исполнение программы. Использование функции позволяет организовать циклы, выполняющиеся до нажатия какой-либо клавиши. Repeat. . . Until Key. Pressed;
Read. Key: Char Читает символ с клавиатуры без эхоповтора на экране. Приостанавливает исполнение программы до нажатия на любую клавишу, кроме Alt, Ctrl и т. п. Эта функция возвращает однобайтовый код клавиши. Ряд клавиш и сочетаний клавиш имеют двухбайтовые коды, первый байт - # 0, поэтому необходим второй вызов функции.
Определение кода клавиши uses crt; var ch : char; begin clrscr; {Очистка экрана} repeat writeln('Нажмите клавишу: '); ch : = readkey; {Ждем ввода символа} if ch = #0 then {Если нажата спец. клавиша} begin ch : = readkey; {нужно прочитать код символа еще раз} writeln('Нажата специальная клавиша с кодом ', ord(ch)); end else {Иначе, если нажата обычная клавиша – сразу видим ее код} writeln('Нажата клавиша с ASCII-кодом', ' ', ord(ch)); until ch=#27; {код клавиши Escape - выход} end.
Прочие процедуры и функции Delay(D: Word) - приостанавливает работу программы на указанное число D миллисекунд. Sound (F: word) - включает встроенный динамик с частотой F герц, обеспечивая выдачу звукового сигнала. No. Sound - выключает динамик. Обязательно используется после пары Sound и Delay.
Задание 1 «Бегущая строка» : По экрану «бежит» текстовая строка. Строка «бежит» справа налево. Выход из программы при нажатии ESC.
Пример программы «Бегущая строка» Пример
Задание 2 «Звездопад из символов» В разных точках экрана появляются символы различных цветов. Для задания координат, цвета и кода символов использовать датчик случайных чисел. Выход из программы при нажатии любой клавиши.
Пример программы «Звездопад из символов» Пример 1 Пример 2 Пример 3
Задание 3 «Шахматная доска» Нарисовать на экране доску размером 8*8 клеток, закрашенных в два цвета. Подписать поля доски.
Пример программы «Шахматная доска»
Домашнее задание Разработать программу для игры в «Крестики – нолики»