CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
setbkcolor
setbkcolor
Функция Устанавливает текущий цвет фона, используя палитру. Синтаксис #include <graphics.h> void far setbcolor(int color); Файл, содержащий graphics.h прототип Описание setbcolor устанавливает фон в цвет, определяемый color. Аргумент color может быть именем или номером, как показано в следующей таблице. ----------------------------------------------------- номер имя номер имя ----------------------------------------------------- 0 BLACK 8 DARKGRAY 1 BLUE 9 LIGHTBLUE 2 GREEN 10 LIGHTGREEN 3 CYAN 11 LIGHTCYAN 4 RED 12 LIGHTRED 5 MAGENTA 13 LIGHTMAGENT 6 BROWN 14 YELLOW 7 LIGHTGRAY 15 WHITE ----------------------------------------------------- Замечание. Эти символические имена определены в graphics.h Например, если вы хотите установить цвет фона в синий, вы можете вызвать setbkcolor(BLUE); /* или */ setbkcolor(1); На системах с CGA и EGA setbkcolor изменяет цвет фона изменением первого элемента палитры. Замечание. Если вы используете VGA или EGA и меняте цвета палитры с помощью setpalette или setallpalette, то предопределенные символические константы могут не дать требуемого цвета. Это происходит потому, что параметр для setbkcolor отображает номер элемента в текущей палитре, а не указанный цвет (если параметр не равен 0, т.к. он всегда устанавливает цвет фона в черный). Возвращаемое Нет. значение Переносимость Функция уникальна для Borland C++. Она работает только на компьютерах IBM PC и совместимых с ними, оснащенных дисплейными адаптерами, поддерживающими графический режим. Функция не совместима с Windows. Смотрите также getbcolor, setallpalette, setcolor, setpalette. Пример: #include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> int main(void) { /* Выбрать драйвер и режим, поддерживающие несколько цветов фона */ int graphdriver = EGA, gmode = EGAHI, errorcode; int bkcolor,x,y,maxcolor; char msg[80]; /* инициализация графики и локальных переменных */ initgraph(&graphdriver,&gmode,""); /* получение результата инициализации */ errorcode = graphresult(); if(errorcode != grOk) /* если ошибка */ { printf("Ошибка :%s\n",grapherrormessage(errorcode)); printf("Для останова нажмите любую клавишу\n"); getch(); exit(1); /* завершение с кодом ошибки */ } /* максимальный поддерживаемый индекс цвета */ maxcolor = getmaxcolor(); /* установить центрирование текста */ settextjustify(CENTER_TEXT,CENTER_TEXT); x = getmaxx() / 2; y = getmaxy() / 2; /* цикл по допустимым цветам */ for(bkcol=0;bkcol<=maxcolor();bkcol++) { /* очистить экран */ cleardevice(); setbkcolor(bkcol); /* вывести сообщение */ if(bkkol == WHITE) setcolor(EGA_BLUE); sprintf(msg,"Background color: %d",bkcol); outtext(x,y,msg); getch(); } /* очистка */ getch(); closegraph(); return 0; }