Лабораторная работа
Тема: Программирование в среде Windows. Шаблон Windows-программ.
Цель: Познакомиться со структурой Windows-программ.
Краткая теория.
Версии компилятора языка Паскаль, позволяющая программировать в среде Windows с использованием возможностей данной среды, получили название Turbo Pascal for Windows и Borland Pascal for Windows.
Процесс создания Windows-программы существенно отличается от процесса создания программы для среды DOS.
Это вызвано тем, что среда Windows - это не просто набор функций, облегчающих реализацию графического интерфейса пользователя, а целое операционное окружение, по сложности не уступающее настоящей операционной системе.
Архитектура, управляемая событиями, накладывает отпечаток и на структуру самой прикладной программы.
Для облегчения понимания дальнейшего изложения, рассмотрим и сравним два рисунка.
Из рисунка 2 видно, что программа, управляемая событиями, не имеет привычных переходов от процедуры к процедуре. В этом случае сразу после выполнения инициализации начинает работать обработчик событий, который, производя анализ поступающего события, передает управление процедуре-обработчику события, а после обработки события управление возвращается системе. После этого обработчик готов к приему следующего события. Информация о наступившем событии передается в виде сообщения, которое раскрывает характер события и содержит информацию, необходимую для его обработки. По окончании работы программы производится деинициализация.
Таким образом, для программы работающей в среде Windows, необходимо создать ряд процедур:
* процедуру инициализации,
* процедуру-обработчик событий,
* диспетчер событий,
* процедуры-обработчики конкретных событий,
* процедуру деинициализации.
Весь вывод информации на экран и прием сообщений программа, работающая в среде Windows, производит через окна, поэтому, помимо работы с сообщениями, необходимо выполнять работу с окнами.
Необходимые термины.
Венгерская нотация - это соглашение о наименовании переменных и функций. Это соглашение широко используется при программировании в среде Windows, т.к. делает код программы более понятным.
Венгерская нотация основывается на следующем принципе: имена переменных должны содержать префикс, описывающий тип данных переменной. В ряде случаев, префикс может служить указателем на способ использования переменной.
Часто используемые префиксы.
Префикс |
Описание |
Префикс |
Описание |
A |
Массив (Array) |
W |
Слово (Word) |
Ch |
Символ () |
L |
Длинное целое (Long) |
By |
Байт (Byte) |
Dw |
Двойное слово (Dword) |
N |
Целое (Short / Int) |
Fn |
Функция (Function) |
I |
Целое (Int) |
P |
Указатель (Pointer) |
X, Y |
Короткое целое для координат (Short) |
S |
Строка (String) |
Cx, Cy |
Короткое целое для координат (Short, Count) |
Sz |
Строка, оканчивающаяся байтом 0 (PChar) |
B |
Булевское (Bool) |
Аналогичное наименование используется для констант.
Ссылки.
Понятие ссылки (Handler) широко используется при создании Windows-программ. В контексте Windows, ссылка - это 16-разрядное слово, однозначно определяющее какой-либо объект среды Windows. Эквивалентом ссылок на объект являются ссылки на файлы в MS-DOS. Ссылка представляет собой число. Имеющее смысл только в указанном контексте и определяющее объект в таблице объектов, которая поддерживается и используется ядром Windows. Ряд функций Windows API возвращает ссылки на соответствующие объекты. В файле WINTYPES.PAS тип данных ссылки определен как
THandle = Word ;
Наиболее важными и часто используемыми являются ссылки на окно (Window handle) и ссылки на контекст устройства (device context handle).
Ссылка на окно позволяет однозначно определить каждое окно, используемое в системе. Все функции, управляющие окнами, используются в качестве одного из параметров ссылку на окно. Имея ссылку на окно, вы можете выполнять над окном все необходимые действия - перемещать его, изменять его размер, делать окно невидимым, перерисовывать изображение внутри окна и т.п. В файле WINTYPES.PAS ссылка на окно определена как
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.