函数参考


_GUICtrlComboBoxEx_SetItem

设置部分或全部项目的属性(使用参数)

#Include <GuiComboBoxEx.au3>
_GUICtrlComboBoxEx_SetItem($hWnd, $sText[, $iIndex = 0[, $iImage = -1[, $iSelectedImage = -1[, $iOverlayImage = -1[, $iIndent = -1[, $iParam = -1]]]]]])

参数

$hWnd 控件句柄
$sText 项目文本,参考备注.
$iIndex [可选参数] 项目的 0 基索引
$iImage [可选参数] 项目图标在图像列表的 0 基索引
$iSelectedImage [可选参数] 项目的选中状态图标在图像列表的 0 基索引
$iOverlayImage [可选参数] 项目的覆盖状态图标在图像列表的 0 基索引
$iIndent [可选参数] 项目缩进的图像宽度数. 一个缩进量等于一个图像宽度.
$iParam [可选参数] 项目的具体值

返回值

成功: 返回 True
失败: 返回 False

注意/说明

If a notification callback is needed, you have to specify $sText = -1 (LPSTR_TEXTCALLBACK).

相关

_GUICtrlComboBoxEx_GetItem, _GUICtrlComboBoxEx_SetItemEx

示例/演示


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

$Debug_CB = False ;检查传递给 ComboBox/ComboBoxEx 函数的类名, 设置为True并输出到一个控件的句柄,用于检查它是否工作

_Main()

Func _Main()
    Local $hGUI, $hImage, $iImage, $hCombo

    ; 创建 GUI
    $hGUI = GUICreate("ComboBoxEx Set Item", 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 : Random string", Random(1, 100, 1)), $iImage, $iImage)
    Next
    _GUICtrlComboBoxEx_EndUpdate($hCombo)

    ; Change item 2
    MsgBox(4160, "信息", "Changing item 2")
    _GUICtrlComboBoxEx_SetItem($hCombo, "New Item 2", 1)

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