HOME ПРИМЕРЫ THANKS НОВИЧКАМ ДОКИ LINKS JavaScript Mail | |||
| |||
|
Turbo Pascal Documentation | ||
Функция: Позволяет изменить записи палитры для драйве- ров IBM 8514 и VGA. Описание: SetRGBPalette(номер_цвета, RedVavue, GreenVa- lue, BlueValue : integer) Примечания: Параметр "номер_цвета" задает запись палит- ры, которую нужно загрузить, а RedValue, GreenValue и BlueValue - цвета, составляющие запись палитры. Для дисплея IBM-8514 "номер-цвета" принивает значения в диапазоне 0..255. Для VGA в цветном режиме и 256К "номер_цвета" принимает значения в диапазоне 0..15. Исполь- зуется только младший байт RedValue, GreenValue и BlueValue и только 6 старших битов этого байта загружаются в палитру. Замечание: В целях совместимости с другими графи- ческими адаптерами фирмы IBM драйвер BGI определяет первые 16 записей палитры IBM-8514 для адаптеров EGA/VGA. Эти значения могут использоваться непосредст- венно или изменяться с помощью процедуры SetRGBPalette. Аналогичная процедура имеется в версии 2.0 Турбо-Си. Ограничения: Процедура SetGRBPalette может использо- ваться только при наличии графического адаптера VGA и драй- вера IBM-8514. Прочее: См. также процедуру SetPalette. Пример: uses Graph; type GRBRec = record RedVal, GreenVal, BlueVal : integer; end; const EGAColors : array[0..MaxColors] of GRBRec =( { Назв. Цвет } (RedVal:00;GreenVal:00;BlueVal:00), {черный EGA 0} (RedVal:00;GreenVal:00;BlueVal:FC), {голуб. EGA 1} (RedVal:24;GreenVal:FC;BlueVal:24), {зелен. EGA 2} (RedVal:00;GreenVal:FC;BlueVal:FC), {бирюз. EGA 3} (RedVal:FC;GreenVal:14;BlueVal:14), {красн. EGA 4} (RedVal:B0;GreenVal:00;BlueVal:FC), {малин. EGA 5} (RedVal:70;GreenVal:48;BlueVal:FC), {корич. EGA 20} (RedVal:C4;GreenVal:C4;BlueVal:C4), {белый EGA 7 } (RedVal:34;GreenVal:34;BlueVal:34), {серый EGA 56} (RedVal:00;GreenVal:00;BlueVal:70), {св.гол.EGA 57} (RedVal:00;GreenVal:70;BlueVal:00), {св.зел.EGA 58} (RedVal:00;GreenVal:70;BlueVal:70), {св.бир.EGA 59} (RedVal:70;GreenVal:00;BlueVal:00), {св.кр. EGA 60} (RedVal:70;GreenVal:00;BlueVal:70), {св.мал.EGA 61} (RedVal:FC;GreenVal:FC;BlueVal:24), {желтый EGA 62} (RedVal:FC;GreenVal:FC;BlueVal:FC), {т.белыйEGA 63} ); var Driver, Mode, i : integer; bagin Driver := IBM8514; { отменить автообнаружение } Mode := IBM8514Hi; InitGraph(Driver, Mode, ''); { перевести в графический режим } if GraphResult < 0 then Halt(1); { нулевая палитря, весь графический вывод невидим } for i := 0 to MaxColors do with EGAColors[i] do SetRGBPalette(i, 0, 0, 0); { вывести что-нибудь на экран } { изменить первый 16 записей палитры для 8514 } for i := 1 to MaxColors do begin SetColor(i); OutText(10, i*10, '...Нажмите любую клавишу..'); end; { восстановить принятые по умолчанию цвета EGA в палитру 8514 } for i := 0 to MaxColors do with EGAColors[i] do SetRGBPalette(i, RedVal, GreenVal, BlueVal); Readln; CloseGraph; end. |
HOME |