русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Опрос и установка цветов пера и фона


Дата добавления: 2015-06-12; просмотров: 506; Нарушение авторских прав


Различные адаптеры поддерживают разное количество цветов, выводимых одновременно на экран в графическом режиме. Но для всех BGI-драйверов оно ограничено диапазоном 0..15. Нумерация и названия цветов совпадают с теми, которые были приведены для текстовых цветов в гл. 15 «Модуль CRT», а имена констант, обозна-{441}чающих цвета (за исключением Blink), продублированы в модуле Graph.

Максимальный номер цвета, воспринимаемый данным адаптером в текущем графическом режиме, может быть получен при помощи функции

GetMaxColor : Word

Например, для CGA в режиме 320x200 (4 цвета на экране) эта функция возвращает число 3, а для CGA в режиме 640x200 (только два цвета) — 1. Эту информацию можно использовать для переопределения цветов:

TYPE

ColorSetType = Array [0..15] of Byte; { тип "набор" }

VAR

CS : ColorSetType; { набор цветов }

i, GMC : Word;

BEGIN

...

GMC := Succ( GetMaxColor );

for i:=0 to 15 do CS[ i ] := i mod GMC;

...

end.

После такого заполнения матрицы-набора цветов можно обращаться к любому цвету из диапазона 0..15, например CS [White] (это то же, что и CS[15]), даже в режиме Hercules — значение элементов массива никогда не превзойдет GetMaxColor.

На экране всегда различаются цвет фона и цвет пера. Все процедуры изображения фигур, если не содержат в себе явной установки цвета, рисуют эти фигуры цветом пера (как символы в текстовом режиме). Этот цвет устанавливается процедурой

SetColor( Color : Word )

Цвет фона — всегда един в поле экрана. Он может быть изменен процедурой

SetBkColor( Color : Word )

После использования этой процедуры цвет экрана сразу же меняется на заданный. Параметр Color не должен превышать текущее значение GetMaxColor. Цветом фона может быть любой из разрешенных цветов, в том числе и яркий. По умолчанию и при реинициализации графики цвет фона равен 0 (Black), а цвет пера равен значению функции GetMaxColor. {442}



Всегда можно опросить текущие установки цвета. Функция

GetColor : Word

возвращает значение текущего цвета пера, а функция

GetBkColor : Word

возвращает текущий цвет фона.



<== предыдущая лекция | следующая лекция ==>
Заливка областей изображения | Управление палитрой


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 2.312 сек.