Function Reference

_GUICtrlComboBox_InitStorage

リストボックスのアイテムを格納するためのメモリを割り当てます。

#Include <GuiComboBox.au3>
_GUICtrlComboBox_InitStorage($hWnd, $iNum, $iBytes)

 

パラメータ

$hWnd コントロールのハンドル
$iNum 追加されるアイテムの数
$iBytes アイテム文字列に割り当てるバイト単位のメモリ量

 

返し値

成功: メモリが割り当てられたアイテムの総数
失敗: $CB_ERRSPACE

 

注意

大量のアイテム(100以上)を持つコンボボックスの初期化を高速化できます。

$iNumパラメータと$iBytesパラメータには推測値を使用できます。
推測値を超えなかった場合には余分なメモリが割り当てられることになります。
推測値を超えた場合には要求された量を超えるアイテムに対しては通常の割り当てが使用されます。

 

関連

_GUICtrlComboBox_AddDir, _GUICtrlComboBox_AddString, _GUICtrlComboBox_InsertString

 


#AutoIt3Wrapper_au3check_parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GUIComboBox.au3>
#include <GuiConstantsEx.au3>

Opt('MustDeclareVars', 1)

$Debug_CB = False ; ComboBox/ComboBoxEx関数に渡されるClassNameを調べる。動作を確認するにはTrueを設定し、他のコントロールのハンドルを使用

_Main()

Func _Main()
    Local $hCombo

    ; GUIを作成
    GUICreate("ComboBox Init Storage", 400, 296)
    $hCombo = GUICtrlCreateCombo("", 2, 2, 396, 296)
    GUISetState()

    ; ストレージを初期化
    MsgBox(4160, "Information", "Pre-Allocated Memory For: " & _GUICtrlComboBox_InitStorage($hCombo, 50, 500) & " items")
   
    ; ファイルを追加
    _GUICtrlComboBox_BeginUpdate($hCombo)
    _GUICtrlComboBox_AddDir($hCombo, @WindowsDir & "\*.exe")
    _GUICtrlComboBox_EndUpdate($hCombo)

    ; ユーザーが終了するまでループ
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>_Main