Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

getpalette

getpalette


Функция            Получает информацию о текущей палитре.

Синтаксис          #include <graphics.h>
                   void far getpalette(struct palettetype far
                          *palette);

Файл, содержащий   graphics.h
прототип

Описание           Заполняет структуру   palettetype,   на    которую
                   ссылается palette, информацией о размере политры и
                   ее  цветах.  Константа   MAXCOLORS   и   структура
                   palettype,  используемые getpalette,  определены в
                   graphics.h следующим образом:

                   #define MAXCOLORS 15

                   struct palettetype{
                          unsigned char size;
                          signed char colors[MAXCOLORS+1];
                   };

                   size дает количество  цветов  в  палитре  текущего
                   драйвера и режима.

                   colors - это массив цветов данной палитры.

                   Примечание. getpalette   нельзя   использовать   с
                   драйвером для IBM-8514.

Возвращаемое       Нет.
значение

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

Смотрите также     getbkcolor, getcolor, getdefaultpalette,
                   getmaxcolor, setallpalette, setpalette.

Пример:

#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

int main(void)
{
/* Запрос автоопределения */
int graphdriver = DETECT, gmode, errorcode;
struct palettetype pal;
char psize[80],pval[20];
int i,ht;
int y=10';

/* инициализация графики и локальных переменных */
initgraph(&graphdriver,&gmode,"");

/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk)  /* если ошибка */
{
   printf("Ошибка :%s\n",grapherrormessage(errorcode));
   printf("Для останова нажмите любую клавишу\n");
   getch();
   exit(1);  /* завершение с кодом ошибки */
}
/* получить копию палитры */
getpalette(&pal);
/* преобразовать ее в строку */
sprintf(psize,"Палитра имеет %d изменяемых элементов",pal.size);
/* вывести информацию */
outtextxy(0,y,psize);
if(pal.size != 0)
{
   ht = textheight("W");
   y += 2*ht;
   outtextxy(0,y,"Ниже приведены значения цветов палитры");
   y += 2*ht;
   for(i=0; i<pal.size, i++,y+=ht)
   {
      sprintf(pval,"Палитра[%02d]:0x%02X",i,pal.colors[i]);
      outtextxy(0,y,pval);
   }
}
/* очистка */
getch();
closegraph();
return 0;
}

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог