Функция Позволяет пользователю определять цвета для
IBM 8514.
Синтаксис #include
void far setgbpalette(int colornum,int red,
int green, int blue);
Файл, содержащий graphics.h
прототип
Описание setgbpalette может использоваться с драйверами
IBM8514 и VGA.
colornum определяет элемент палитры, который дол-
жен быть загружен, а red, green и blue определяют
цветовые составляющие элемента палитры.
Для дисплея IBM8514 (и VGA в цветном режиме 256К)
colornum изменяется в интервале от 0 до 255. Для
остальных режимов VGA colornum изменяется в ин-
тервале от 0 до 15. Используется только младшие
байты red, green и blue, и из байта лишь 6 наибо-
лее значащих бит загружаются в палитру.
Замечание. Для совместимости с другими графичес-
кими адаптерами IBM, драйвер BGI устанавливает
первые 16 элементов палитры IBM8514 в цвета
EGA/VGA, используемые по умолчанию. Эти значения
могут использоваться без изменений, а могут изме-
няться с помощью setrgbpalette.
Возвращаемое Нет.
значение
Переносимость Функция уникальна для Turbo C++. Она работает
только на компьютерах IBM PC и совместимых с ни-
ми, оснащенных дисплейными адаптерами, поддержи-
вающими графический режим.
Смотрите также setpalette
Пример:
#include
#include
#include
#include
int main(void)
{
/* выбор драйвера и режима, поддерживающих функцию setrgbpalette */
int graphdriver = VGA, gmode = VGAHI, errorcode;
/* указатель на структуру описания политры */
struct palettetype pal;
int i,ht,y,xmax;
/* инициализация графики и локальных переменных */
initgraph(&graphdriver,&gmode,"");
/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk) /* если ошибка */
{
printf("Ошибка :%s\n",grapherrormsg(errorcode));
printf("Для останова нажмите любую клавишу\n");
getch();
exit(1); /* завершение с кодом ошибки */
}
/* получить копию палитры */
getpalette(&pal);
for(i=0;i