↑  ←  Описание функции


_WinAPI_CreateSolidBitmap

Создает одноцветное растровое изображение

#include <WinAPI.au3>
_WinAPI_CreateSolidBitmap($hWnd, $iColor, $iWidth, $iHeight [, $bRGB = 1])

Параметры

$hWnd Дескриптор окна, в котором будет отображаться растровое изображение
$iColor Цвет растрового изображения, заданного в RGB
$iWidth Ширина растрового изображения
$iHeight Высота растрового изображения
$bRGB [необязательный] Если True, то преобразуется в COLOREF (0x00bbggrr)

Возвращаемое значение

Успех:Возвращает дескриптор растрового изображения
Ошибка:Возвращает 0

См. также

_WinAPI_CreateCompatibleBitmap

Пример

#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <GuiImageList.au3>

_Main()

Func _Main()
    Local $iListView, $hListView, $hImage, $hModule, $hBitmap
    Local $exStyles = BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES)

    GUICreate("Пример", 400, 300)
    $iListView = GUICtrlCreateListView("", 2, 2, 394, 268, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
    _GUICtrlListView_SetExtendedListViewStyle($iListView, $exStyles)
    $hListView = GUICtrlGetHandle($iListView)
    GUISetState()

    $hModule = _WinAPI_LoadLibrary(@SystemDir & '\shell32.dll') ; загружаем модуль для использования его ресурсов
    $hBitmap = _WinAPI_LoadBitmap($hModule, 230) ; загружаем ресурс Bitmap из загруженного модуля shell32.dll

    ; Загружает изображения
    $hImage = _GUIImageList_Create(20, 20)
    _GUIImageList_Add($hImage, _WinAPI_CreateSolidBitmap($hListView, 0xFF0000, 20, 20))
    _GUIImageList_Add($hImage, _WinAPI_CreateSolidBitmap($hListView, 0x00FF00, 20, 20))
    _GUIImageList_Add($hImage, $hBitmap)
    _GUICtrlListView_SetImageList($iListView, $hImage, 1)

    ; Добавляет колонки
    _GUICtrlListView_AddColumn($iListView, "Пункты", 120)

    ; Добавляет пункты
    _GUICtrlListView_AddItem($iListView, "Пункт 1", 0)
    _GUICtrlListView_AddItem($iListView, "Пункт 2", 1)
    _GUICtrlListView_AddItem($iListView, "Пункт 3", 2)

    ; Цикл выполняется, пока окно не будет закрыто
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main