Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Ввод строки.

Читайте также:
  1. Длина строки.
  2. Строки.

Когда идет чтение из Input или из текстового файла, который назначает на экран, вводится одна строка входного текста за одну операцию. Строка запоминается во внутреннем буфере текстового файла и когда строка читается, этот буфер используется как входной источник. Когда буфер пуст, вводится новая строка.

Для того, чтобы проверить состояние клавиатуры и ввести отдельные символы под управлением программы, используйте функции KeyPressed и ReadKey.

 

Константы.
Константы цветов текста.

Следующие константы используются в процедурах TextColor и TextBackground:

Константа Значение
Black  
Blue  
Green  
Cyan  
Red  
Magenta  
Brown  
LightGray  
DarkGray  
LightBlue  
LightGreen  
LightCyan  
LightRed  
LightMagenta  
Yellow  
White  
Blink  


Цвета представлены числами с 0 до 15, для более легкого использования цветов можно использовать эти константы вместо чисел. В цветовых текстовых режимах цвет символов выбирается из 16 цветов и фоновый цвет из 8 цветов. Цвет символов может быть также выбран блинкующий.

Переменные.
В Crt определены переменные:

Переменные Тип
CheckBreak Boolean
CheckEof Boolean
CheckSnow Boolean
DirectVideo Boolean
LastMode Word
TextAttr Byte
WindMin Word
WindMax Word

 

CheckBreak.

Разрешает или запрещает проверки для Ctrl-Break.

var CheckBreak: Вoolean;

Когда CheckBreak в True, нажатие Ctrl-Break будет завершать программу во время ее очередного вывода на экран. Когда CheckBreak в False, нажатие Ctrl-Break не дает эффекта. По умолчанию CheakBreak в True.

 

CheckEof.

Разрешает или запрещает символ конца файла:

var CheckEof: Вoolean;

Когда CheckEof в True, символ конца файла будет генерироваться, если Вы нажмете Ctrl-Z во время чтения из файла, назначенного на экран. Когда CheckEof равна False, нажатие Ctrl-Z не дает эффекта. По умолчанию CheckEof в False.

 

CheckSnow.

Разрешает или запрещает "контроль снега" при запоминании символов прямо в видеопамяти.

var CheckSnow: Вoolean;

На большинстве типов CGA на экране будут появляться помехи ("снег") при запоминании символов в видеопамяти не во время обратного хода луча трубки терминала. Этого не случится на монохромных адаптерах или адаптерах типа EGA. Когда выбран цветной режим и CheckSnow в True, прямая запись в видеопамять будет производится только во время обратного хода луча. Если Вы работаете с новым исполнением CGA, Вы можете установить CheckSnow в False в начале Вашей программы и после каждого вызова TextMode. Это будет запрещать проверку на "снег", в результате чего скорость вывода значительно возрастает. CheckSnow не оказывает действие, если DirectVideo в False.

 

DirectVideo.

Разрешает и запрещает прямой доступ к памяти для Write и Writeln при выводе на экран.

var DirectVideo: Boolean;

Когда DirectVideo в True, Write и Writeln при выводе в файлы, назначенные на экран, будут запоминать символы в видеопамяти вместо вызова BIOS. Когда DirectVideo в False, все символы будут записываться через вызовы BIOS, что значительно медленнее. DirectVideo по умолчанию всегда в True. Если по каким-либо причинам, Вы хотите выводить символы через вызовы BIOS, установите DirectVideo в False в начале Вашей программы и после каждого вызова TextMode.

 

LastMode.

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

var LastMode: Word;

 

TextAttr.

Содержит текущие атрибуты текста.

var TextAttr: Byte;

Атрибуты текста обычно устанавливаются через вызовы TextColor и TextBackground. Однако, Вы можете установить их прямым запоминанием значения в TextAttr. Информация о цвете кодируется в TextAttr следующим образом:

Биты                
  B b B b f f f f

где ffff - 4 битовый цвет символа, bbb - 3 битовый цвет фона, В - бит установки блинкования (мигания). Если Вы используете константы цветов для создания значений TextAttr, помните, что цвет фона может быть выбран только из первых 8 цветов и что он должен быть умножен на 16 для установки его в правильную битовую позицию. Следующий пример выбирает блинкующие желтые символы на синем фоне:

TextAttr:= Yellow + Blue * 16 + Blink;

 

WindMin и WindMax.

Содержат экранные координаты текущего окна.

var WindMin, WindMax: Word;

Эти переменные устанавливаются вызовом процедуры Window. WindMin определяет верхний левый угол и WindMax определяет нижний правый угол. Координата Х запомнена в младшем байте и координата Y запомнена в старшем байте. Например, Lo(WindMin) выдает координату Х левой границы и Hi(WindMax) выдает координату Y нижней границы окна. Верхний левый угол экрана соответствует (X,Y)=(0,0). Заметим, однако, что для координат, передаваемых в Window и GotoXY, верхний левый угол соответствует (1,1).

 

Процедуры и функции.

Функция Описание
KeyPressed Возвращает True, если на клавиатуре была нажата клавиша, и False в противном случае.
ReadKey Читает символ с клавиатуры.
WhereX Возвращает Х координату текущей позиции курсора относительно текущего окна. Х - горизонтальная позиция.
WhereY Возвращает Y координату текущей позиции курсора относительно текущего окна. Y - вертикальная позиция.

 

Процедура Описание
AssignCrt Назначает текстовый файл на экран.
ClrEol Удаляет все символы от текущей позиции курсора до конца строки без передвижения курсора.
ClrScr Очищает экран и помещает курсор в верхний левый угол.
Delay Задержка на указанное число миллисекунд.
DelLine Удаляет строку на которой находится курсор и перемещает все строки ниже этой строки на строку вверх. Нижняя строка очищается.
GotoXY Позиционирует курсор. Х - горизонтальная позиция и Y - вертикальная позиция.
HighVideo Устанавливает высокую интенсивность символов.
InsLine Вставляет пустую строку в позиции курсора.
LowVideo Устанавливает низкую интенсивность символов.
NormVideo Устанавливает нормальную интенсивность символов.
NoSound Выключает внутренний громкоговоритель.
Sound Включает внутренний громкоговоритель.
TextBackground Устанавливает цвет фона.
TextColor Устанавливает цвет символов.
TextMode Устанавливает текстовый режим.
Window Определяет текстовое окно на экране.

 

1)Функция без параметров KeyPressed возвращает true, если на клавиатуре была нажата любая символьная клавиша, и false в противном случае. Не задерживает выполнение программы.

2)Функция без параметров ReadKey возвращает символ нажатой клавиши без эхо повтора на экране. Приостанавливает выполнений программы до нажатия на любую клавишу.

3) Функции без параметров WhereX, WhereY возвращают

горизонтальную или вертикальную координату текущей позиции курсора относительно текущего окна.

4) Процедура без параметров CIrEol удаляет все символы оттекущей позиции курсора до конца строки без перемещения курсора.

5) Процедура без параметров DelLine удаляет строку, на которой находится курсор, и перемещает все строки ниже этой строки на строку вверх. Нижняя строка очищается.

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

7) Процедура Delay приостанавливает работу программы на указанное число миллисекунд (t). DELAY(t);

8) Процедура GotoX,Y перемещает курсор в точку с заданными координатами X,Y текстового экрана или окна, если оно задано. GOTOXY(X,Y);

9) Процедура без параметров InsLine вставляет пустую строку в позицию курсора.

10)Процедуры без параметров HighVideo, LowVideo, NormVideo устанавливают высокую, низкую, нормальную яркость символов. 11)Процедура Sound включает звуковой генератор с частотой HZ, заданной в герцах: SOUND(hz);

12)Процедура без параметров NoSound выключает звуковой генератор. Обязательная последовательность действий для включения звука:...sound(.,.);delay(...);nosound;...

13)Процедуры TextColor, TextBackground устанавливают цвет символов и цвет фона в текстовом режиме. ТехtСоlоr(цвет); TextBackground(цвет);

14)Процедура Window определяет текстовое окно на экране:

Window(X1,Y1,X2,Y2); где Х1,У1,Х2,Y2-координаты левого верхнего угла и правого нижнего угла экрана 0<=X<=80,0<=Y<=25.

 

Графический режим.

 

Экран дисплея ПК представляет собой прямоугольное поле, состоящее из большого количества точек. Дисплей может работать в текстовом и графическом режимах. Но в отличие от текстового режима в графическом режиме имеется возможность изменять цвет каждой точки.

Чтобы сделать процесс графического программирования более эффективным, фирма Borland International разработала специализированную библиотеку Graph (в этом библиотечном модуле содержится 79 графических процедур, функций, различных стандартных констант и типов данных), набор драйверов, позволяющих работать с разными типами мониторов, и набор шрифтов для вывода на графический экран текстов разной величины и формы.

Аппаратная поддержка графики ПК обеспечивается двумя основными модулями: видеомонитором и видеоадаптером. Какой бы адаптер ни был установлен на компьютере, мы можем использовать один и тот же набор графических процедур и функций Турбо Паскаля благодаря тому, что их конечная настройка на конкретный адаптер осуществляется автоматически. Эту настройку выполняют графические драйверы.

Запуск и завершение работы в графической системе осуществляется следующим образом:

1. Подключить модуль Graph (библиотеку графических процедур): uses Graph;

2. Установить графический режим:

- описываем переменные, которые определяют графический драйвер и монитор:

var gd, gm: integer;

- задаем команду ПК для самовыбора значений переменных:

gd:=Detect;(значение gm после команды gd:=detect; определяется автоматически)

- инициализируем графический режим:

InitGraph(gd, gm,’ указывается путь к драйверу, чем подробнее, тем лучше’)

С этого момента все графические средства доступны пользователю.

3. Завершить работу в графической системе: CloseGraph;

 

Для построения изображений на экране используется система координат. Отсчет начинается от верхнего левого угла экрана, который имеет координаты (0,0). Значение Х (столбец) увеличивается слева направо, значение Y (строка) увеличивается сверху вниз. Чтобы строить изображения, необходимо указывать точку начала вывода. В текстовых режимах эту точку указывает курсор, который присутствует на экране. В графических режимах видимого курсора нет, но есть невидимый текущий указатель CP (Current Pointer). Фактически это тот же курсор, но он невидим.

 

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


Дата добавления: 2015-08-13; просмотров: 134 | Нарушение авторских прав


Читайте в этой же книге: Главное меню Turbo Pascal | Пункт Edit. | Введение в язык Паскаль. Структура программы на Паскале. | Строки. | Описание одномерных массивов. | Поиск элементов, удовлетворяющих заданному условию. | Алгоритм быстрой сортировки. | Многомерные массивы. | Длина строки. | Параметры-значения и параметры-переменные. |
<== предыдущая страница | следующая страница ==>
Устройства LРT1, LРT2, LРT3.| Цветовая шкала

mybiblioteka.su - 2015-2024 год. (0.012 сек.)