Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
https://tdfilter.ru фильтр воздушный кассетный фвкас.
Сейчас на сайте
Гостей: 29
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Диплом - база данных поставщиков на Delphi (MS Sql Server)+ Пояснительна...
Программа тестирования и обучающая программа по математике на Turbo Pasc...
Моделирование системы управления качеством производственного процесса на...

Модуль CRT. Текстовый вывод на экран


Используемый в ПК дисплей состоит из двух основных частей: монитора, содержащего экран, и блока управления, который называют дисплейным адаптером или просто адаптером.
Исторически первым адаптером был монохромный адаптер, имеющий скромные возможности - он позволял выводить только текстовые сообщения в одном из двух форматов: 25 строк по 40 или по 80 символов в строке. Символы выводились в прямом изображении (светлые символы на темном фоне), причем их ширина оставалась одинаковой в обоих режимах. Поэтому в режиме 40x25 была задействована только левая половина экрана.
Позднее появились адаптер HGC, который мог еще и воспроизводить графические изображения с разрешением 720x350 точек (пикселов), и цветной графический адаптер CGA, позволяющий выводить как текстовые сообщения, так и графические изображения с разрешением 320x200 или 640x350 пикселов. В текстовом режиме выводились 40x25 или 80x25 символов как в монохромном, так и в цветном изображении.
Для задания одного из возможных текстовых режимов адаптера служит процедура
TextMode (Mode: word);



Здесь Mode – код текстового режима. В качестве значения этого выражения могут использоваться следующие константы, определенные в модуле Crt (см. табл. 14.1).



По умолчанию устанавливается режим 3(СО80).
При вызове процедуры TextMode код установленного режима запоминается в стандартной переменной LastMode : word, которая может быль использована как для проверки так и для установлении текстового режима при возвращении из графического.
Write(‘Номер текстового режима’,LastMode);
TextMode (LastMode);



При работе с экраном через модуль Crt весь экран разбивается на отдельные неделимые прямоугольные элементы. Для каждого элемента можно задать цвет фона (задний план) и цвет символа (передний план). Кроме того, в случае необходимости символ можно сделать мерцающим. Вся эта информация (атрибуты символа) размещается в одном байте информации так, как показано на рис. 14.1.
Модуль CRT. Текстовый вывод на экран
На этом рисунке буквой М обозначен бит мерцания (символ мерцает, если в этом бите установлена единица), буквами Ф – биты с кодом цвета фона (биты 4-6), и буквами С - биты с кодом цвета символа (биты 0-3).
Для управления цветом символов и фона служат процедуры
TextColor (Color:Byte); и TextBackground(Color:Byte).



Параметр этих процедур может принимать следующие значения (константы определены в модуле Crt):
Параметр этих процедур может принимать следующие значения
Текущие атрибуты текста хранятся в стандартной переменной TextAtt:Byte.
Следующий пример иллюстрирует цветовые возможности ТР.
uses Crt;
const col: array [1..6] of string[16] =
(’синий’,’зеленый’,’голубой’,’красный’,
’фиолетовый’,’коричневый’);
var i:Byte;
begin
for i:=1 to 6 do {Выводим 6 сообщений
разными цветами}
begin
TextColor(i);
writeln(’Цвет ’, i, ’ - ’, col[i]);
end;
TextColor(White+Blink); {Белые мигающие символы}
writeln(’ Мерцание символов’);
{Восстанавливаем стандартный цвет}
TextColor(LightGray);
writeln;
end.



Модуль Crt позволяет не только работать со всем экраном, но и выделять в нем прямоугольные окна. Процедура Window определяет текстовое окно - область экрана, которая в дальнейшем будет рассматриваться процедурами ввода-вывода как весь экран.
Window (x1,y1,x2,y2: byte);



Здесь x1,y1,x2,y2 - координаты левого верхнего и правого нижнего угла.
Процедура window задает размеры окна на экране и помещает курсор в левый верхний угол окна.
Обращение к процедуре игнорируется, если какая-либо из координат выходит за границы экрана или если нарушается одно из условий: x2>x1 и y2>y1.
Если на экране активизировано окно, то все координаты определяются относительно границ окна, за исключением самой процедуры window (здесь координаты всегда задаются относительно границ экрана). При работе в окне координаты отсчитываются от левого верхнего угла окна.
Процедура ClrScr очищает экран или окно. После обращения к ней экран (окно) заполняется цветом фона, курсор устанавливается в левый верхний угол.
Процедура GotoXY переводит курсор в нужное место экрана или текущего окна.
GotoXY (x,y:byte);



Здесь x, y –новые координаты курсора. Координаты задаются относительно границ экрана (окна).
Обращение к процедуре игнорируется, если какая-либо из новых координат выходит за границы экрана.
Функции WhereX и WhereY служат для определения текущих координат курсора (определяются, соответственно, горизонтальная и вертикальная координаты).
Процедура HighVideo устанавливает высокую яркость символов, выводимых далее на экран (заменяет цвета 0-7 на цвета 8-15).
Процедура LowVideo устанавливает малую яркость символов, выводимых далее на экран (заменяет цвета 8-15 на цвета0-7).
Процедура NormVideo устанавливает первоначальную яркость символов, выводимых далее на экран.
Опубликовал Kest April 30 2010 15:32:48 · 0 Комментариев · 11898 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Socoban
VksButton
Delphi Быстрый Ст...
Простой текстовый...
Visual Basic for ...
Java 2 - Эффектив...
Error mod
Создание Web-сайт...
Delphi 2005 Секре...
Пятнашки и крести...
DeleteEdit
Blib [Исходник на...
Самоучитель PHP 5...
Шкрыль А. - Разра...
PDJXPPack
База для Allsubmi...
Андрей Боровский....
Run
Пишем программы и...
AlnComponents

Топ загрузок
Приложение Клие... 100803
Delphi 7 Enterp... 98089
Converter AMR<-... 20309
GPSS World Stud... 17086
Borland C++Buil... 14268
Borland Delphi ... 10395
Turbo Pascal fo... 7400
Калькулятор [Ис... 6097
Visual Studio 2... 5244
Microsoft SQL S... 3678
Случайные статьи
Система 4.4BSD
Доставка и обработ...
Небольшие изменени...
END expected
Защита растений
Как решать задачи ...
Виды Интернет Рекл...
Запись медиаконтента
categoryid
Работа с объектом ...
Сохранение данных ...
Вызов функций, нап...
Большие числа
Другие способы лам...
Форма Access - про...
14.7. Дополнительн...
Работа с диспетчер...
Вычисление расстоя...
Алгоритм нахождени...
Ребята из Microsoft
Медицинские системы.
Increase Quotas (У...
Ud и lima
Свойство типа массив
HTPC под Windows
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?