Funktionreferenz


_GUIImageList_AddMasked

Beschreibung anzeigen in

Fügt ein Bild oder mehrere Bilder einer Imagelist hinzu, welche eine Maske von dem festgelegten Bitmap erstellt

#include <GuiImageList.au3>
_GUIImageList_AddMasked ( $hWnd, $hImage [, $iMask = 0] )

Parameter

$hWnd Handle des Controls
$hImage Handle zum Bitmap welches das Bild oder die Bilder enthält. Die Anzahl von Bildern wird aus der Breite des Bitmaps gefolgert.
$iMask [optional] verwendete Farbe um die Maske zu erstellen. Jedes Pixel dieser Farbe in dem festgelegten Bitmap wird zu schwarz geändert und das zugehörige Bit in der Maske wird auf 1 gesetzt.

Rückgabewert

Erfolg: Der Index des ersten neuen Bildes
Fehler: -1

Bemerkungen

Diese Funktion kopiert das Bitmap in eine interne Datenstruktur.
Nach der Funktion muss _WinAPI_DeleteObject() verwendet werden um $hImage wieder zu löschen. Bitmaps mit einer Farbtiefe größer als 8 bpp werden nicht unterstützt.

- - - - - - - - Erklärung der Controls - - - - - - - -

Verwandte Funktionen

_GUIImageList_Add, _WinAPI_DeleteObject

Beispiel

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

Example()

Func Example()
    Local $idListview, $hImage

    GUICreate("Imagelist: AddMasked", 400, 300)
    $idListview = GUICtrlCreateListView("", 2, 2, 394, 268, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
    GUISetState(@SW_SHOW)

    ; Lädt die Bilder
    $hImage = _GUIImageList_Create(11, 11)
    _GUIImageList_AddMasked($hImage, _GUICtrlListView_CreateSolidBitMap($idListview, 0xFF0000, 11, 11))
    _GUIImageList_AddMasked($hImage, _GUICtrlListView_CreateSolidBitMap($idListview, 0x00FF00, 11, 11))
    _GUIImageList_AddMasked($hImage, _GUICtrlListView_CreateSolidBitMap($idListview, 0x0000FF, 11, 11))
    _GUICtrlListView_SetImageList($idListview, $hImage, 1)

    ; Fügt die Spalten hinzu
    _GUICtrlListView_AddColumn($idListview, "Items", 120)

    ; Fügt die Items hinzu
    _GUICtrlListView_AddItem($idListview, "Item 1", 0)
    _GUICtrlListView_AddItem($idListview, "Item 2", 1)
    _GUICtrlListView_AddItem($idListview, "Item 3", 2)

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>Example