UDF > GUI > GuiComboBoxEx >


_GUICtrlComboBoxEx_GetItemEx

Récupère une partie ou tous les attributs d'un élément

#include <GuiComboBoxEx.au3>
_GUICtrlComboBoxEx_GetItemEx ( $hWnd, ByRef $tItem )

Paramètres

$hWnd Handle du contrôle
$tItem La structure $tagCOMBOBOXEXITEM qui spécifie les informations à récupérer

Valeur de retour

Succès: Retourne True.
Échec: Retourne False.

En relation

$tagCOMBOBOXEXITEM, _GUICtrlComboBoxEx_GetItem, _GUICtrlComboBoxEx_SetItemEx

Exemple

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

Global $g_idMemo

Example()

Func Example()
    Local $hGUI, $hImage, $tItem, $sText, $iLen, $hCombo

    ; Crée une GUI
    $hGUI = GUICreate("ComboBoxEx Get ItemEx", 400, 300)
    $hCombo = _GUICtrlComboBoxEx_Create($hGUI, "", 2, 2, 394, 100)
    $g_idMemo = GUICtrlCreateEdit("", 2, 32, 396, 266, 0)
    GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
    GUISetState(@SW_SHOW)

    $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)

    For $x = 0 To 8
        _GUICtrlComboBoxEx_AddString($hCombo, StringFormat("%03d : Random string", Random(1, 100, 1)), $x, $x)
    Next

    ; Définit le retrait de l'élément
    _GUICtrlComboBoxEx_SetItemIndent($hCombo, 1, 1)

    ; Crée la structure
    $tItem = DllStructCreate($tagCOMBOBOXEXITEM)
    ; Définit le masque de ce qu'il faut récupérer
    DllStructSetData($tItem, "Mask", BitOR($CBEIF_IMAGE, $CBEIF_INDENT, $CBEIF_LPARAM, $CBEIF_SELECTEDIMAGE, $CBEIF_OVERLAY))
    ; Définit l'index de l'élément à récupérer
    DllStructSetData($tItem, "Item", 1)

    _GUICtrlComboBoxEx_GetItemEx($hCombo, $tItem)
    $iLen = _GUICtrlComboBoxEx_GetItemText($hCombo, 1, $sText)
    MemoWrite("Item Text : " & $sText)
    MemoWrite("Item Len ..........................: " & $iLen)
    MemoWrite("# image widths to indent ..........: " & DllStructGetData($tItem, "Indent"))
    MemoWrite("0-based item image index .......: " & DllStructGetData($tItem, "Image"))
    MemoWrite("0-based item state image index .: " & DllStructGetData($tItem, "SelectedImage"))
    MemoWrite("0-based item image overlay index: " & DllStructGetData($tItem, "OverlayImage"))
    MemoWrite("Item application defined value ....: " & DllStructGetData($tItem, "Param"))

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>Example

; Ecrit une ligne dans le contrôle mémo
Func MemoWrite($sMessage)
    GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite