_GUIImageList_AddMasked
Добавляет изображение(я) в список изображений, создавая маску из указанных растровых изображений
#include <GuiImageList.au3>
_GUIImageList_AddMasked($hWnd, $hImage [, $iMask=0])
Параметры
$hWnd | Дескриптор ImageList |
$hImage |
Дескриптор растрового изображения, содержащего изображение(я). Количество изображений определяется шириной растрового изображения. |
$iMask |
[необязательный] Цвет, используемый для создания маски. Каждый пиксель этого цвета в указанном растровом изображении изменяется на черный, и соответствующая битность в маске устанавливается в 1. |
Возвращаемое значение
Успех: | Возвращает индекс первого нового изображения |
Ошибка: | Возвращает -1 |
Примечания
Эта функция копирует растровое изображение во внутреннюю структуру данных. Обязательно используйте функцию _WinAPI_DeleteObject для удаления hImage после возвращения из функции. Растровые изображения с глубиной цвета больше 8 бит на пиксель не поддерживаются.См. также
_GUIImageList_AddПример
#include <GUIConstantsEx.au3>
#include <WinAPI.au3>
#include <GuiListView.au3>
#include <GuiImageList.au3>
#include <WindowsConstants.au3>
_Main()
Func _Main()
Local $listview, $hImage
GUICreate("ImageList AddMasked", 400, 300)
$listview = GUICtrlCreateListView("", 2, 2, 394, 268, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
GUISetState()
; Загружает изображения
$hImage = _GUIImageList_Create(11, 11)
_GUIImageList_AddMasked($hImage, _GUICtrlListView_CreateSolidBitMap($listview, 0xFF0000, 11, 11))
_GUIImageList_AddMasked($hImage, _GUICtrlListView_CreateSolidBitMap($listview, 0x00FF00, 11, 11))
_GUIImageList_AddMasked($hImage, _GUICtrlListView_CreateSolidBitMap($listview, 0x0000FF, 11, 11))
_GUICtrlListView_SetImageList($listview, $hImage, 1)
; Добавляет колонки
_GUICtrlListView_AddColumn($listview, "Пункты", 120)
; Добавляет пункты
_GUICtrlListView_AddItem($listview, "Пункт 1", 0)
_GUICtrlListView_AddItem($listview, "Пункт 2", 1)
_GUICtrlListView_AddItem($listview, "Пункт 3", 2)
; Цикл выполняется, пока окно не будет закрыто
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>_Main