Russian Belarusian English German Japanese Ukrainian

Setbkcolor

CuBook05

Функция

Устанавливает текущий цвет фона, используя палитру.
 
Синтаксис

#include <graphics.h>
void far setbcolor(int color);
 
Прототип

graphics.h
 
Описание

Функция setbcolor устанавливает фон в цвет, определяемый color. Аргумент color может быть именем или номером. На системах с CGA и EGA setbkcolor изменяет цвет фона изменением первого элемента палитры.

Замечание. Если вы используете VGA или EGA и меняте цвета палитры с помощью setpalette или setallpalette, то предопределенные символические константы могут не дать требуемого цвета. Это происходит потому, что параметр для setbkcolor отображает номер элемента в текущей палитре, а не указанный цвет (если параметр не равен 0, т.к. он всегда устанавливает цвет фона в черный).
 
Возвращаемое значение

Нет.
 
Переносимость

Функция уникальна для Borland C++. Она работает только на компьютерах IBM PC и совместимых с ними, оснащенных дисплейными адаптерами, поддерживающими графический режим. Функция не совместима с Windows.
 
Пример

#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;
}
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий


Защитный код Обновить