Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование.doc
Скачиваний:
4
Добавлен:
27.10.2018
Размер:
1.46 Mб
Скачать

Створення інтерфейсу користувача Текстовый режим

В текстовом режиме единицей вывода информации служит символ. На экране каждый символ занимает одно знакоместо - прямоугольный участок размером 8х8 пикселей (зерен экрана). Во весь экран помещается 80х25 знакомест.

Курсор (мигающий прямоугольник) помечает то место на экране, куда по умолчанию будет осуществлен вывод очередного символа, - текущую позицию. Для определения текущей позиции курсора предназначена сетка координат, мысленно накладываемая на экран. Левое верхнее знакоместо имеет координаты (1,1), правое верхнее - (1,80), левое нижнее - (25,1) и правое нижнее - соответственно (25,80).

Рассмотренные в лекции 6 процедуры write() и writeln() работают именно с текстовым экраном: они выводят информацию посимвольно, начиная с текущей позиции курсора.

Если при выводе информации в текстовый файл любой символ записывается туда в виде своего изображения, то при выводе на экран существуют четыре исключения из этого правила:

  • Вместо изображения символа #7 компьютер издаст звуковой сигнал.

  • Вместо изображения символа #8 курсор на экране будет передвинут на одну позицию влево.

  • Вместо изображения символа #10 курсор на экране будет передвинут на одну строку вниз.

  • Вместо изображения символа #13 курсор на экране будет передвинут на начало текущей строки.

Остальные символы выводятся на экран в "правильном" виде.

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

В предыдущей лекции мы уже упоминали, что модуль Crt, входящий в состав стандартных библиотек языка Pascal, содержит средства для работы с экраном в текстовом режиме.

Для того чтобы сделать работоспособными все описанные ниже процедуры и функции, ваша программа должна подключить стандартный модуль Crt:

uses crt;

Активная область ввода / вывода

Процедура Window(x1,y1,x2,y2: byte) создаст на экране окно с координатами левого верхнего угла в точке (x1,y1) и координатами правого нижнего угла в точке (x2,y2). Теперь активная область экрана будет ограничена этим окном. Текущие координаты курсора будут отсчитываться не от левого верхнего угла экрана, а от левого верхнего угла этого окна.

Очистка

Процедура ClrScr очистит весь экран (или активное окно); курсор будет помещен в верхний левый его угол.

Процедура ClrEol очистит текущую строку, начиная с текущей позиции курсора и до правого края экрана (окна).

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

Процедура InsLine очистит текущую строку целиком. Курсор останется на прежней позиции.

Цвета

Процедура TextBackground(color: byte) установит цвет фона.

Процедура TextColor(color: byte) установит цвет выводимого текста.

Замечание: Вместо номера цвета возможно использовать соответствующую константу

Таблица 14.1. Стандартные цвета языка Pascal

Стандартная константа

Номер

Цвет

Стандартная константа

Номер

Цвет

black

0

Черный

darkgray

8

Темно-серый

blue

1

Синий

lightblue

9

Ярко-синий

green

2

Зеленый

lightgreen

10

Ярко-зеленый

cyan

3

Голубой

lightcyan

11

Ярко-голубой

red

4

Красный

lightred

12

Розовый

magenta

5

Фиолетовый

lightmagenta

13

Ярко-фиолетовый

brown

6

Коричневый

yellow

14

Желтый

lightgray

7

Светло-серый

white

15

Белый

Помимо этого, можно использовать константу blink = 128 (мерцание).

Звук

Процедура Sound(hz: word) включит звуковой сигнал с частотой hz герц.

Процедура NoSound выключит звуковой сигнал.