Alloue de la mémoire pour stocker les éléments de la liste déroulante d'une ComboBox
#include <GuiComboBox.au3>
_GUICtrlComboBox_InitStorage ( $hWnd, $iNum, $iBytes )
$hWnd | ID/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 |
Succès: | Retourne le nombre total d'éléments pour lesquels la mémoire a été allouée . |
Échec: | Retourne $CB_ERRSPACE. |
Contribue à accélérer l'initialisation des ComboBox qui ont un grand nombre d'éléments (plus de 100).
Vous pouvez utiliser des estimations pour les paramètres $iNum et $iBytes.
Si vous sur-estimez, la mémoire supplémentaire est allouée.
Si vous sous-estimez, une allocation normale est utilisée pour les éléments qui dépassent le montant demandé.
_GUICtrlComboBox_AddDir, _GUICtrlComboBox_AddString, _GUICtrlComboBox_InsertString
#include <GuiComboBox.au3> #include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> Example() Func Example() Local $idCombo ; Crée une GUI GUICreate("ComboBox Init Storage", 400, 296) $idCombo = GUICtrlCreateCombo("", 2, 2, 396, 296) GUISetState(@SW_SHOW) ; Initialise Storaged MsgBox($MB_SYSTEMMODAL, "Information", "Pre-Allocated Memory For: " & _GUICtrlComboBox_InitStorage($idCombo, 50, 500) & " items") ; Ajoute des fichiers _GUICtrlComboBox_BeginUpdate($idCombo) _GUICtrlComboBox_AddDir($idCombo, @WindowsDir & "\*.exe") _GUICtrlComboBox_EndUpdate($idCombo) ; Boucle jusqu'à ce que l'utilisateur quitte Do Until GUIGetMsg() = $GUI_EVENT_CLOSE GUIDelete() EndFunc ;==>Example