Setzt manche oder alle Attribute eines Items
#Include <GuiComboBoxEx.au3>
_GUICtrlComboBoxEx_SetItemEx($hWnd, ByRef $tItem)
Parameter
| $hWnd | Handle des Controls |
| $tItem | $tagCOMBOBOXEXITEM Struktur |
Rückgabewert
Erfolg: True
Bemerkungen
Um die Attribute eines Items zu setzen, ist das Item Member der $tagCOMBOBOXEXITEM Struktur auf den Index des Items zu setzen.
Verwandte Funktionen
_GUICtrlComboBoxEx_GetItemEx, _GUICtrlComboBoxEx_SetItem, $tagCOMBOBOXEXITEM
Beispiel
#include <GuiComboBoxEx.au3>
#include <GuiImageList.au3>
#include <GuiConstantsEx.au3>
Opt('MustDeclareVars', 1)
$Debug_CB = False ; Prüft den Klassennamen (ClassName), der an die ComboBox/ComboBoxEx-Funktion übergeben wird. Setze dies versuchsweise auf True und verwende dann ein Handle zu einem anderen Control, um die Funktionsweise zu verstehen.
_Main()
Func _Main()
Local $hGUI, $hImage, $iImage, $tItem, $hCombo
; Erstellt eine GUI
$hGUI = GUICreate("ComboBoxEx: Setzt Item-Attribute", 400, 300)
$hCombo = _GUICtrlComboBoxEx_Create ($hGUI, "", 2, 2, 394, 100)
GUISetState()
$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)
_GUIImageList_Add ($hImage, _GUICtrlComboBoxEx_CreateSolidBitMap ($hCombo, 0xFF0000, 16, 16))
_GUIImageList_Add ($hImage, _GUICtrlComboBoxEx_CreateSolidBitMap ($hCombo, 0x00FF00, 16, 16))
_GUIImageList_Add ($hImage, _GUICtrlComboBoxEx_CreateSolidBitMap ($hCombo, 0x0000FF, 16, 16))
_GUICtrlComboBoxEx_SetImageList ($hCombo, $hImage)
_GUICtrlComboBoxEx_InitStorage ($hCombo, 150, 300)
_GUICtrlComboBoxEx_BeginUpdate ($hCombo)
For $x = 0 To 149
$iImage = Random(0, 8, 1)
_GUICtrlComboBoxEx_AddString ($hCombo, StringFormat("%03d : Zufallstring", Random(1, 100, 1)), $iImage, $iImage)
Next
_GUICtrlComboBoxEx_EndUpdate ($hCombo)
; Ändere Item 2
MsgBox(8256, "Information", "Item 2 wird geändert!")
$tItem = DllStructCreate($tagCOMBOBOXEXITEM)
DllStructSetData($tItem, "Mask", $CBEIF_INDENT)
DllStructSetData($tItem, "Item", 1)
DllStructSetData($tItem, "Indent", 2)
_GUICtrlComboBoxEx_SetItemEx ($hCombo, $tItem)
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc ;==>_Main