UDF > GUI > GuiComboBoxEx >


_GUICtrlComboBoxEx_InitStorage

Alloue de la mémoire pour stocker les éléments de la ListBox

#include <GuiComboBoxEx.au3>
_GUICtrlComboBoxEx_InitStorage ( $hWnd, $iNum, $iBytes )

Paramètres

$hWnd Handle du contrôle
$iNum Nombre d'éléments à ajouter
$iBytes La quantité de mémoire à allouer pour les chaînes des éléments, en octets

Valeur de retour

Succès: le nombre total de points pour lesquels la mémoire a été allouée pré.
Échec: $CB_ERRSPACE.

Remarques

Contribue à accélérer l'initialisation de ComboBoxes qui ont un grand nombre d'articles (plus de 100 ).

Vous pouvez utiliser des estimations pour la iNum $et $paramètres de iBytes.
Si vous surestimez, la mémoire supplémentaire est allouée.
Si vous sous-estimez, la répartition normale est utilisée pour les éléments qui dépassent le montant demandé.

En relation

_GUICtrlComboBoxEx_AddDir, _GUICtrlComboBoxEx_AddString, _GUICtrlComboBoxEx_InsertString

Exemple

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

Example()

Func Example()
    Local $hGUI, $hCombo

    ; Crée une GUI
    $hGUI = GUICreate("ComboBoxEx Init Storage", 400, 300)
    $hCombo = _GUICtrlComboBoxEx_Create($hGUI, "", 2, 2, 396, 296, $CBS_SIMPLE)
    GUISetState(@SW_SHOW)

    MsgBox($MB_SYSTEMMODAL, "Information", "Init Storage Pre-Allocated Memory For: " & _GUICtrlComboBoxEx_InitStorage($hCombo, 150, 300) & " Items")
    _GUICtrlComboBoxEx_BeginUpdate($hCombo)

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

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