Function Reference

_GUICtrlHeader_SetItem

アイテムの情報を設定します。

#Include <GuiHeader.au3>
_GUICtrlHeader_SetItem($hWnd, $iIndex, ByRef $tItem)

 

パラメータ

$hWnd コントロールのハンドル
$iIndex ゼロ始まりのアイテムインデックス
$tItem DllStructCreate($tagHDITEM)構造体

 

返し値

成功: True
失敗: False

 

注意

なし。

 

関連

_GUICtrlHeader_GetItem, $tagHDITEM

 


#include <GuiConstantsEx.au3>
#include <GuiHeader.au3>
#include <GuiImageList.au3>
#include <WinAPI.au3>

Opt('MustDeclareVars', 1)

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

Global $iMemo

_Main()

Func _Main()
    Local $hGUI, $hHeader, $hImage, $tItem

    ; GUIを作成
    $hGUI = GUICreate("Header", 400, 300)
    $hHeader = _GUICtrlHeader_Create ($hGUI)
    $iMemo = GUICtrlCreateEdit("", 2, 24, 396, 274, 0)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; 画像から画像リストを作成
    $hImage = _GUIImageList_Create (11, 11)
    _GUIImageList_Add ($hImage, _WinAPI_CreateSolidBitmap ($hGUI, 0xFF0000, 11, 11))
    _GUIImageList_Add ($hImage, _WinAPI_CreateSolidBitmap ($hGUI, 0x00FF00, 11, 11))
    _GUIImageList_Add ($hImage, _WinAPI_CreateSolidBitmap ($hGUI, 0x0000FF, 11, 11))
    _GUICtrlHeader_SetImageList ($hHeader, $hImage)

    ; 列を追加
    _GUICtrlHeader_AddItem ($hHeader, "Column 1", 100, 0, 0)
    _GUICtrlHeader_AddItem ($hHeader, "Column 2", 100, 0, 1)
    _GUICtrlHeader_AddItem ($hHeader, "Column 3", 100, 0, 2)
    _GUICtrlHeader_AddItem ($hHeader, "Column 4", 100)

    ; 列3の画像インデックスを設定
    $tItem = DllStructCreate($tagHDITEM)
    DllStructSetData($tItem, "Mask", $HDI_IMAGE)
    DllStructSetData($tItem, "Image", 0)
    _GUICtrlHeader_SetItem ($hHeader, 2, $tItem)

    ; 列3の画像インデックスを表示
    $tItem = DllStructCreate($tagHDITEM)
    DllStructSetData($tItem, "Mask", $HDI_IMAGE)
    _GUICtrlHeader_GetItem ($hHeader, 2, $tItem)
    MemoWrite("Column 3 image index: " & DllStructGetData($tItem, "Image"))

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

; メモコントロールに1行書き込み
Func MemoWrite($sMessage)
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite