Функция Получает информацию о текущей области просмотра.
Синтаксис #include
void var getviewsettings(struct
viewporttype far *viewport);
Файл, содержащий graphics.h
прототип
Описание getviewsettings заполняет структуру viewporttype,
на которую указывает viewport информацией о теку-
щей области просмотра. Структура viewporttype ис-
пользуемая getviewport определена в graphics.h
следующим образом:
struct viewporttype {
int left, top, right, bottom;
int clip;
};
Возвращаемое Нет.
значение
Переносимость Функция уникальна для Turbo C++. Она работает
только на компьютерах IBM PC и совместимых с ни-
ми, оснащенных дисплейными адаптерами, поддержи-
вающими графический режим.
Смотрите также clearviewportgetxgetysrtviewport
Пример:
#include
#include
#include
#include
char *clip[] = {"OFF","ON"};
int main(void)
{
/* Запрос автоопределения */
int graphdriver = DETECT, gmode, errorcode;
struct viewporttype viewinfo;
int midx,midy,ht;
char topstr[80],botstr[80],clipstr[80];
/* инициализация графики и локальных переменных */
initgraph(&graphdriver,&gmode,"");
/* получение результата инициализации */
errorcode = graphresult();
if(errorcode != grOk) /* если ошибка */
{
printf("Ошибка :%s\n",grapherrormsg(errorcode));
printf("Для останова нажмите любую клавишу\n");
getch();
exit(1); /* завершение с кодом ошибки */
}
midx = getmaxx()/2;
midy = getmaxy()/2;
/* получить информацию о текущей области просмотра */
getviewsettings(&viewinfo);
/* преобразовать информацию в строки */
sprintf(topstr,"Левый верхний угол(%d,%d)",viewinfo.left,
viewinfo.top);
sprintf(botstr,"Правый нижний угол(%d,%d)",viewinfo.rigth,
viewinfo.bottom);
sprintf(clipstr,"Клиппирование: %s",clip[viewinfo.clip]);
/* вывести информацию */
ht = textheight("W");
settextjustify(CENTER_TEXT,CENTER_TEXT);
outtextxy(midx,midy,topstr);
outtextxy(midx,midy+2*ht,botstr);
outtextxy(midx,midy+4*ht,clipstr);
/* очистка */
getch();
closegraph();
return 0;
}