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;
}
|