Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка Pascal 2005 Часть2.doc
Скачиваний:
3
Добавлен:
27.08.2019
Размер:
846.34 Кб
Скачать

Процедуры и функции работы с графикой Инициализация графического режима

InitGraph (драйвер, режим, путь) – процедура инициирует графический режим. Драйвер – переменная типа Integer, определяет тип графического драйвера. Режим – переменная типа Integer, задающая режим работы графического адаптера. Путь – выражение типа String, содержащее имя файла драйвера и, возможно, маршрут его поиска. Процедура загружает графический драйвер в оперативную память и переводит адаптер в графический режим работы. Тип драйвера должен соответствовать типу графического адаптера. Обычно при инициализации графики в качестве драйвера указывается значение Detect – режим автоопределения типа графического драйвера. В этом случае режим работы графического адаптера определяется по умолчанию.

Closegraph – процедура завершает работу адаптера в графическом режиме и восстанавливает текстовый режим работы экрана.

Пример. Порядок перехода в графический режим.

Uses Graph;

Var

Driver, Mode: Integer;

Begin

Driver:=Detect;

{режим автоопределения типа графического драйвера}

InitGraph(Driver,Mode,’’);

{графический режим}

Repeat Until KeyPressed; {задержка экрана}

CloseGraph; {закрыли графический режим}

End.

GraphResult – функция возвращает значение типа Integer, в котором закодирован результат последнего обращения к графическим процедурам. Если ошибка не обнаружена, значением функции будет ноль, в противном случае – отрицательное число, соответствующее значению одной из зарезервированных констант ошибок. Например,

Const grOk=0; {Нет ошибок}

GraphErrorMsg (код_ошибки) – функция возвращает значение типа String, в котором по указанному коду ошибки дается соответствующее текстовое сообщене. Код ошибки – это значение, возвращаемое функцией GraphResult.

RestoreCRTMode – процедура служит для кратковременного возврата в текстовый режим.

GetGraphMode – функция возвращает значение типа Integer, в котором содержится код установленного режима работы графического адаптера.

SetGraphMode (режим) – процедура устанавливает новый графический режим работы адаптера. Режим – число типа Integer, задающее режим работы адаптера.

Пример перехода из графического режима в текстовый и обратно.

Uses Graph;

Var

Driver, Mode, Error: Integer;

Begin

{инициируем графический режим}

Driver:=Detect;

InitGraph(Driver,Mode,’’);

Error:=GraphResult; {запоминаем результат}

If Error<>grOK then {проверяем ошибку}

WriteLn(GraphErrorMsg(Error)) {есть ошибка}

else {нет ошибки}

Begin

{это графический режим}

Repeat Until KeyPressed;

{переходим в текстовый режим}

RestoreCRTMode;

Repeat Until KeyPressed;

{возвращаемся в графический режим}

SetGraphMode(GetGraphMode);

Repeat Until KeyPressed;

CloseGraph; {закрыли графический режим}

end;

End.

DetectGraph (драйвер, режим_работы) – процедура возвращает тип драйвера и максимально возможный режим его работы.

GetDriverName – функция возвращает значение типа String, содержащее имя загруженного графического драйвера.

GetMaxMode – функция возвращает значение типа Integer, содержащее количество возможных режимов работы адаптера.

GetModeName (номер_режима) – функция возвращает значение типа String, содержащее разрешение экрана и имя режима работы адаптера по его номеру.

GetModeRange (тип_адаптера, min, max) – процедура возвращает диапазон возможных режимов работы заданного графического адаптера. Тип адаптера – число типа Integer, min, max – переменные типа Integer, в которых возвращаются нижнее и верхнее возможные значения номера режима.