Кодинг
★ Рубрика: Кодинг
★ Тема: Pascal

Включение графического режима в Паскале

Графический режим – это особый режим вывода на экран. Он является альтернативой текстовому режиму и отменяет его. Вначале графический режим обязательно должен быть запущен (инициирован), а в конце работы с ним – закрыт. Для этого используют следующие процедуры и функции.
Процедура InitGraph(Var grDr,grMd:integer;path:string);
grDr – графический драйвер, grMd – графический режим (mode), допустимый для этого драйвера; Path – полное имя каталога, в котором находятся графические драйверы. Если этот параметр задается пустой строкой (т.е. ’’), то подразумевается, что файлы драйверов находятся в текущем каталоге. Первые два параметра являются параметрами-переменными и должны быть объявлены в описании переменных. Перед инициированием графического режима необходимо задать тип используемого драйвера. Это можно сделать самим или определить автоматически.

Пример.
grDr : = Detect; - драйвер определяется автоматически или
grDr : = Vga; - задан тип драйвера Vga.
Функция GraphResult.

Функция GraphResult- возвращает код ошибки для последней выполненной графической операции (в том числе и InitGraph, и De-tectGraph). Тип результата – целый.

Определены более десяти кодов ошибок. Если ошибки нет, то функция GraphResult возвращает код, равный 0 (соответствующая константа – GrOk). В противном случае возвращаемый код не равен 0. Причину ошибки можно узнать, обратившись к функции GraphErrorMsg. Входным параметром этой функции должен быть код ошибки, а возвращает функция строку, содержащую причину возникновения ошибки.

Процедура CloseGraph; – закрывает графический режим и восстанавливает исходный текстовый режим экрана, освобождает память, занимаемую графическим драйвером.

Пример. Стандартный фрагмент для работы с графикой.
Program...
Uses
graph;
.....
Var
grDr ,grMd,Er:integer;
......
Begin
grDr := Detect;{автоматическое определение драйвера}
InitGraph(grDr,grMd,’’);{драйвер в текущем каталоге}
Er := GraphResult; { Код ошибки }
If Er=grOk then
Begin { Графический режим }
.....
CloseGraph;
End
Else
WriteLn(’Ошибка графики:’,Er,’.,GraphErrorMsg(Er));
.....
end.
Пример. Переключение в текстовый режим и обратно.
Begin
{Графический режим}
.......
RestoreCrtMode; { переход в текстовый режим Crt }
.......
SetGraphMode(grMd); { Снова графический режим }
.......
end;
 Похожие публикации: Pascal

Войдите, чтобы добавить Ваш ответ. [ Регистрация | Вход ]