Азбука программирования в Win32 API


Азбука программирования в Win32 API - стр. 59


В Giaph Demo

Рис. 6. Прорисовка геометрических объектов

69

ВЗАИМОДЕЙСТВИЕ ПРОГРАММЫ С ПОЛЬЗОВАТЕЛЕМ

НЕМНОГО О РЕСУРСАХ (ПРЕДИСЛОВИЕ К РАЗГОВОРУ)

ЧТО ТАКОЕ РЕСУРСЫ?

Выше упоминалось, что составной частью проекта, работа которого планируется в Windows, является файл определения ресурсов. Возникает вопрос: что же такое ресурсы, когда и в каких целях они используются?

У Windows, как уже говорилось, есть некоторые предопределенные данные (вспомним предопределенные курсоры, иконки и кисти). Точно так же, почти в каждой программе для Windows есть некоторые данные, которые определяются еще до начала работы программы, особым обра­зом добавляются в выполняемый файл   и используются при работе про­граммы. Яркими примерами таких данных являются иконки и курсоры мыши. Кроме них, к числу ресурсов относятся: используемые в программе изображения; строки символов;

меню;

ускорители клавиатуры;

диалоговые окна;

шрифты;

ресурсы, определяемые пользователем.

Следует отметить, что выполняемым файлом может быть файл про­граммы .ехе, файл динамической библиотеки .dll и другие бинарные файлы. Для удобства буду их называть bin-файлами.

Помимо того, что ресурсы определяются до начала работы программы и добавляются в bin-файл, у них есть еще одна характерная черта. При загрузке bin-файла в память, РЕСУРСЫ В ПАМЯТЬ НЕ ЗАГРУЖАЮТСЯ. Только в случае, если тот или иной ресурс требуется для работы программы, программа сама загружает ресурс в память.

Возможность использования того или иного атрибута в качестве ре­сурса не означает, что программист не может создавать эти атрибуты в программе. Яркий пример тому можно найти в работе старого доброго Program Manager'a. При перетаскивании иконки с места на место курсор меняет свою форму и принимает форму, подобную перетаскиваемой иконке. Естественно, что в этом случае курсоры определяются програм­мой. Помимо .этого, вспомним drag-and-drop в Explorer'e и изменение формы курсора при этом.

70

Еще одним примером являются динамические меню, т. е. меню, кото­рые изменяют свои вид и предоставляемые возможности в зависимости от обстоятельств. Пример динамического меню будет приведен при изучении меню.




Начало  Назад  Вперед



Книжный магазин