函数参考


_GUICtrlHeader_GetOrderArray

获取当前从左到右的项目顺序

#include <GuiHeader.au3>
_GUICtrlHeader_GetOrderArray($hWnd)

参数

$hWnd 控件句柄

返回值

成功: 返回如下格式数组:
        [0] - 数组元素数量
        [1] - 项目 1 的索引
        [2] - 项目 2 的索引
        [n] - 项目 n 的索引

注意/说明

None.

相关

_GUICtrlHeader_SetOrderArray

示例/演示


#include <GUIConstantsEx.au3>
#include <GuiHeader.au3>

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

Global $iMemo

_Main()

Func _Main()
    Local $hGUI, $hHeader, $aOrder[5] = [4, 3, 1, 2, 0]

    ; 创建 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()

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

    ; Set order array
    _GUICtrlHeader_SetOrderArray($hHeader, $aOrder)

    ; Show order array
    $aOrder = _GUICtrlHeader_GetOrderArray($hHeader)
    For $iI = 0 To $aOrder[0]
        MemoWrite("Order " & $iI & ": " & $aOrder[$iI])
    Next

    ; 循环直到用户退出
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>_Main

; 写入一行到 memo 控件
Func MemoWrite($sMessage)
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite