CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
setgraphmode
setgraphmode
Функция Переводит систему в графический режим, очищает экран. Синтаксис #include <graphics.h> void far setgraphmode(int mode); Файл, содержащий graphics.h прототип Описание setgraphmode выбирает графический режим отличный от установленного по умолчанию функцией initgraph. mode должен быть режимом, допустимым для используемого драйвера. setgraphmode очищает экран и устанавливает все графические величины в значение по умолчанию (CP, палитра, цвет, окно и т.д.). Вы можете использовать setgraphmode совместно с restorecrtmode для переключения между графическим и текстовым режимами. Возвращаемое Если вы задаете setgraphmode несуществующий значение для используемого драйвера режим, то graphresult вернет значение -10 (grInvalidMode). Переносимость Функция уникальна для Borland C++. Она работает только на компьютерах IBM PC и совместимых с ними, оснащенных дисплейными адаптерами, поддерживающими графический режим. Функция не совместима с Windows. Смотрите также getgraphmode, getmoderange, graphresult, initgraph, restorecrtmode. Пример: #include <graphics.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> int main(void) { /* Запрос автоопределения */ int graphdriver = DETECT, gmode, errorcode; int x,y; /* инициализация графики и локальных переменных */ initgraph(&graphdriver,&gmode,""); /* получение результата инициализации */ errorcode = graphresult(); if(errorcode != grOk) /* если ошибка */ { printf("Ошибка :%s\n",grapherrormessage(errorcode)); printf("Для останова нажмите любую клавишу\n"); getch(); exit(1); /* завершение с кодом ошибки */ } x = getmaxx()/2; y = getmaxy()/2; /* вывести сообщение */ settextjustify(CENTER_TEXT,CENTER_TEXT); outtextxy(x,y,"Press any key to exit graphics..."); getch(); /* перевести систему в текстовый режим */ restorecrtmode(); printf("Мы в текстовом режиме\n"); printf("Для возврата в графический режим нажмите клавишу.\n"); getch(); /* возврат в графический режим */ setgraphmode(getgraphmode()); /* вывести сообщение */ settextjustify(CENTER_TEXT,CENTER_TEXT); outtextxy(x,y,"We're back in graphics mode..."); outtextxy(x,y+textheight("W"),"Press any key to halt..."); /* очистка */ getch(); closegraph(); return 0; }