Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции 5.6 по инфе.doc
Скачиваний:
4
Добавлен:
11.07.2019
Размер:
62.98 Кб
Скачать

3. Простые операторы управления вводом-выводом в текстовом режиме.

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

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

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

Для возможности доступа к средствам управления экранным вводом-выводом в программе на Турбо Паскале необходимо первой строкой раздела описаний программы записать ссылку на использование модуля CRT в форме:

uses CRT;

где: uses - ключевое слово, означающее подключение модуля к программе.

Установка цвета фона, цвета символов и очистка экрана.

Модуль CRT допускает использовать в текстовом режиме экрана 16 цветов, задаваемых стандартными константами цветов от black до white (это имена констант, а сами константы являются целыми числами от 0 до 15, так black соответствует константе 0, а white - константе 15). Эти константы представлены следующей таблицей:

Таблица 2. Константы цветов модуля CRT.

Black

Blue

Green

Cyan

Red

Magenta

Brown

LightGray

0

черный

1

синий

2

зеленый

3

голубой

4

красный

5

фиолет.

6

коричн.

7

свет.сер.

DarkGray

LightBlue

Light

Green

LightCyan

LightRed

Light Magenta

Yellow

White

8

тем.сер.

9

ярк.син.

10

ярк.зел.

11

ярк.гол.

12

розов.

13

малин.

14

желтый

15

белый

Для цвета фона можно использовать первые 8 цветов, а для цвета символов - все 16 цветов. Эти цвета устанавливаются следующими операторами:

TextBackground( < цвет> );

TextColor(< цвет> );

где: < цвет> - константа цвета.

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

Часто для установки цвета фона на экране используют оператор очистки экрана. Его действие эквивалентно заполнению всего экрана пробелами (с предварительно установленным цветом фона) и установке курсора в верхний левый угол экрана (с координатами 1,1). Этот оператор очистки экрана имеет название ClrScr. Оператор стирает имеющуюся ранее информацию и подготавливает вывод в верхнюю строку экрана (в отличие от потокового вывода, выполняемого всегда в нижнюю строку экрана). Ввод и вывод при этом могут выполняться теми же операторами read, readln, wrire, writeln.

Установка окон на текстовом экране.

Для установки окна предусмотрен оператор

window (x1,y1,x2,y2);

где: x1,y1,x2,y2 - координаты левого верхнего и правого нижнего угла окна.

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

После установки окна все последующие операторы ввода-вывода, в том числе и операторы CRT относятся только к этому окну до тех пор, пока не будет открыто новое окно (сам оператор window относится к полному экрану). Полный экран можно рассматривать как окно, устанавливаемое оператором window (1,1,80,25).

Замечание

Если в операторе window указать координаты окна вне экрана, выполнение оператора window будет проигнорировано без какого либо системного сообщения!