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


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


РАБОТА СО СПИСКОМ ИЗОБРАЖЕНИЙ

И Windows предусмотрен интересный элемент, который лично я могу назвать элементом управления с большой натяжкой. Тем не менее, этот элемент активно используется при работе с другими элементами управ­ления, например, с закладками, речь о которых еще впереди. Я имею в виду список изображений (Image List). Он представляет собой коллекцию изображении одинакового размера, к каждому из которых можно осуще­ствить доступ по его индексу. Список изображении используется для эффективного управления и манипулирования большими наборами изображении.

Наверное, этот элемент управления самостоятельно не используется еще и потому, что он не является окном. Список изображений - это всего-навсего структура в памяти, обеспечивающая простой доступ к изобра­жениям.

Как и в случае обычных списков, при работе со списками изображе­ний можно создавать и удалять списки, добавлять, удалять и изменять элементы списков. Специфическим именно для списков изображений являются операции по прорисовке и перетаскиванию изображений.

Списки изображений могут быть немаскированными и маскирован­ными. Немаскированный список представляет собой один большой цветной bitmap, который, в свою очередь, состоит из одного или несколь­ких изображений. Маскируемый список состоит из двух больших bitmap'oB, первый из которых, цветной, содержит непосредственно список изображений, а второй, монохромный, содержит список масок -по одной для каждого элемента.

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

Для создания списка изображений приложению необходимо вызвать функцию ImageList Create(), которая описана в файле commctrl.h сле­дующим образом:

WINCOMMCTRLAPI HIMAUEL1ST WINAM

lst Crcatc(int ex. int су,

UfNT Hags. int cliiitial, inl cGrow):




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



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