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

Ваш аккаунт

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

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

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

detectgraph

detectgraph


Функция            Определяет графический драйвер и графический режим
                   при проверке аппаратуры.

Синтаксис          #include <graphics.h>
                   void far detectgraph (int far*graphdriver,
                      int far *graphmode);

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

Описание           detectgraph определяет  ваш  системный  графический
                   адаптер  и  выбирает  режим,  который  обеспечивает
                   самое высокое разрешение для этого  адаптера.  Если
                   графический   адаптер  не  обнаружен,  *graphdriver
                   устанавливается в  -2  и  graphresult  будет  также
                   возвращать -2 (grNotDetected).

                   *graphdriver -    целое,     которое     определяет
                   используемый графический драйвер.  Вы можете задать
                   его значение,  используя  константу  перечисляемого
                   типа graphics_drivers,  определенную в graphics.h и
                   приведенную в следующей таблице.
                   
                   Таблица 2.1. Константы функции detectgrapf.
                   __________________________________________
                    graphics_drivers
                    константа           численное значение
                   __________________________________________
                    DETECT              0 (запрашивает
                                           автоопределение
                                           драйвера)
                    CGA                 1
                    MCGA                2
                    EGA                 3
                    EGA64               4
                    EGAMONO             5
                    IBM8514             6
                    HERCMONO            7
                    ATT400              8
                    VGA                 9
                    PC3270              10
                   __________________________________________

                   *graphmode - целое,  которое  определяет  начальный
                   графический   режим  (если  *graphdriver  не  равен
                   DETECT,  *graphmode  устанавливается  в   наивысшее
                   разрешение, допустимое  для  данного драйвера).  Вы
                   можете  задать   значение   *graphmode,   используя
                   константу   перечисляемого   типа   graphics_modes,
                   определенную в graphics.h и показанную в  следующей
                   таблице:
      
      Таблица 2.2. Информация графических драйверов.
      ----------------------------------------------------------------
      Графическ.  graphics   Знач.  Колонок     Палитра  Страниц
      драйвер     _modes            * столбцов
      ----------------------------------------------------------------
      CGA         CGAC0       0     320 x 200   C0          1
                  CGAC1       1     320 x 200   C1          1
                  CGAC2       2     320 x 200   C2          1
                  CGAC3       3     320 x 200   C3          1
                  CGAHI       4     640 x 200   2цвета      1

      MCGA        MCGAC0      0     320 x 200   C0          1
                  MCGAC1      1     320 x 200   C1          1
                  MCGAC2      2     320 x 200   C2          1
                  MCGAC3      3     320 x 200   C3          1
                  MCGAMED     4     640 x 200   2цвета      1
                  MCGAHI      5     640 x 480   2цвета      1

      EGA         EGALO       0     640 x 200   16цветов    4
                  EGAHI       1     640 x 350   16цветов    2

      EGA64       EGA64LO     0     640 x 200   16цветов    1
                  EGA64HI     1     640 x 350   4 цвета     1

      EGA-        EGAMONOHI   3     640 x 350   2 цвета     1*
      MONO        EGAMONOHI   3     640 x 350   2 цвета     2**

      HERC        HERCMONOHI  0     720 x 348   2 цвета     2

      AT400       ATT400C0    0     320 x 200   C0          1
                  ATT400C1    1     320 x 200   C1          1
                  ATT400C2    2     320 x 200   C2          1
                  ATT400C3    3     320 x 200   C3          1
                  ATT400MED   4     640 x 200   2 цвета     1
                  ATT400HI    5     640 x 400   2 цвета     1

      VGA         VGALO       0     640 x 200   16 цветов   2
                  VGAMED      1     640 x 350   16 цветов   2
                  VGAHI       2     640 x 380   16 цветов   1

      PC3270      PC3270HI    0     720 x 350   2 цвета     1

      IBM8514     IBM8514HI   0     640 x 480   256 цветов
                  IBM8514LO   0    1024 x 768   256 цветов

       *  64К на карте EGAMONO
      **  256К на карте EGAMONO
      ----------------------------------------------------------------

                    Замечание. Основная причина вызова непосредственно
                    detectgraph состоит в переопределении графического
                    режима, который      detectgraph      рекомендовал
                    initgraph.

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

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

Смотрите также     graphresult, initgraph.

Пример:

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

/* Имена различных графических адаптеров */
char *gname[] = { "требуется определение",
                  "MCGA",
                  "CGA",
                  "EGA",
                  "EGA с 64K",
                  "монохромный EGA",
                  "IBM 8514",
                  "Hercules монохромный",
                  "AT&T 6300 PC",
                  "VGA",
                  "IBM 3270" };

int main(void)
{
/* используется для определения графического адаптера */
int graphdriver, gmode, errorcode;
/* определение адаптера */
detectgraph(&graphdriver,&gmode,"");
/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk)  /* если ошибка */
{
   printf("Ошибка :%s\n",grapherrormessage(errorcode));
   printf("Для останова нажмите любую клавишу\n");
   getch();
   exit(1);  /* завершение с кодом ошибки */
}
/* вывести полученную информацию */
clrscr();
printf("Установлена плата: %s",gname[graphdriver]);
printf("Для завершения нажмите любую клавишу...");
getch();
return 0;
}

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

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