Entfernt ein oder mehrere Bilder von einer Imagelist
#include <GuiImageList.au3>
_GUIImageList_Remove ( $hWnd [, $iIndex = -1] )
| $hWnd | Handle der Imagelist |
| $iIndex | [optional] Der Index des zu entfernenden Bildes. Falls dieser Parameter -1 ist, werden alle Bilder entfernt |
| Erfolg: | True |
| Fehler: | False |
Wenn ein Bild entfernt wird, wird der Index der verbleibenden Bilder so angepasst, dass diese von 0 bis 1 weniger als die Anzahl der Bilder in der Imagelist fortlaufend durchnummeriert sind.
Wenn zum Beispiel das Bild mit dem Index 0 entfernt wird, dann bekommt das Bild mit dem Index 1 den Index 0, das Bild mit dem Index 2 den Index 1 und so weiter.
- - - - - - - - Erklärung der Controls - - - - - - - -
#include <GUIConstantsEx.au3>
#include <GuiImageList.au3>
#include <GuiListView.au3>
#include <MsgBoxConstants.au3>
Example()
Func Example()
Local $idListview, $hImage
Local $iStylesEx = BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES)
GUICreate("ImageList: Bilder entfernen", 400, 300)
$idListview = GUICtrlCreateListView("", 2, 2, 394, 268, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT))
_GUICtrlListView_SetExtendedListViewStyle($idListview, $iStylesEx)
GUISetState(@SW_SHOW)
; Lädt die Bilder
$hImage = _GUIImageList_Create(16, 16, 5, 3)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 110)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 131)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 165)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 168)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 137)
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 146)
_GUICtrlListView_SetImageList($idListview, $hImage, 1)
; Fügt die Spalten hinzu
_GUICtrlListView_AddColumn($idListview, "Spalte 1", 120)
_GUICtrlListView_AddColumn($idListview, "Spalte 2", 120)
_GUICtrlListView_AddColumn($idListview, "Spalte 3", 120)
; Fügt die Items hinzu
_GUICtrlListView_AddItem($idListview, "Zeile 1: Spalte 1", 0)
_GUICtrlListView_AddSubItem($idListview, 0, "Zeile 1: Spalte 2", 1, 1)
_GUICtrlListView_AddSubItem($idListview, 0, "Zeile 1: Spalte 3", 2, 2)
_GUICtrlListView_AddItem($idListview, "Zeile 2: Spalte 1", 1)
_GUICtrlListView_AddSubItem($idListview, 1, "Zeile 2: Spalte 2", 1, 2)
_GUICtrlListView_AddItem($idListview, "Zeile 3: Spalte 1", 2)
_GUICtrlListView_AddItem($idListview, "Zeile 4: Spalte 1", 3)
_GUICtrlListView_AddItem($idListview, "Zeile 5: Spalte 1", 4)
_GUICtrlListView_AddSubItem($idListview, 4, "Zeile 5: Spalte 2", 1, 3)
_GUICtrlListView_AddItem($idListview, "Zeile 6: Spalte 1", 5)
_GUICtrlListView_AddSubItem($idListview, 5, "Zeile 6: Spalte 2", 1, 4)
_GUICtrlListView_AddSubItem($idListview, 5, "Zeile 6: Spalte 3", 2, 3)
MsgBox($MB_SYSTEMMODAL, "Information", "Es wird das Bild mit dem Index 0 entfernt")
_GUIImageList_Remove($hImage, 0)
_GUICtrlListView_DeleteAllItems(GUICtrlGetHandle($idListview))
; Fügt die Items hinzu
_GUICtrlListView_AddItem($idListview, "Zeile 1: Spalte 1", 0)
_GUICtrlListView_AddSubItem($idListview, 0, "Zeile 1: Spalte 2", 1, 1)
_GUICtrlListView_AddSubItem($idListview, 0, "Zeile 1: Spalte 3", 2, 2)
_GUICtrlListView_AddItem($idListview, "Zeile 2: Spalte 1", 1)
_GUICtrlListView_AddSubItem($idListview, 1, "Zeile 2: Spalte 2", 1, 2)
_GUICtrlListView_AddItem($idListview, "Zeile 3: Spalte 1", 2)
_GUICtrlListView_AddItem($idListview, "Zeile 4: Spalte 1", 3)
_GUICtrlListView_AddItem($idListview, "Zeile 5: Spalte 1", 4)
_GUICtrlListView_AddSubItem($idListview, 4, "Zeile 5: Spalte 2", 1, 3)
_GUICtrlListView_AddItem($idListview, "Zeile 6: Spalte 1", 5)
_GUICtrlListView_AddSubItem($idListview, 5, "Zeile 6: Spalte 2", 1, 4)
_GUICtrlListView_AddSubItem($idListview, 5, "Zeile 6: Spalte 3", 2, 3)
; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example