UDF > GUI > GuiHeader >


_GUICtrlHeader_HitTest

Teste un point pour d�terminer quel �l�ment se trouve au point sp�cifi�

#include <GuiHeader.au3>
_GUICtrlHeader_HitTest ( $hWnd, $iX, $iY )

Param�tres

$hWnd Handle du contr�le
$iX Position X � tester
$iY Position Y � tester

Valeur de retour

Retourne un tableau avec le format suivant:
    [0] - Index, compt� � partir de 0, de l'�l�ment � la position sp�cifi�e, ou -1 si aucun �l�ment n'a �t� trouv�
    [1] - Si True, la position est dans la fen�tre client du contr�le, mais pas sur un �l�ment
    [2] - Si True, la position est dans le rectangle de d�limitation du contr�le
    [3] - Si True, la position est sur le s�parateur entre deux �l�ments
    [4] - Si True, la position est sur le s�parateur d'un �l�ment qui a une largeur de z�ro
    [5] - Si True, la position est sur la zone de filtre
    [6] - Si True, la position est sur le bouton de filtre
    [7] - Si True, la position est au-dessus du rectangle de d�limitation du contr�le
    [8] - Si True, la position est ci-dessous du rectangle de d�limitation du contr�le
    [9] - Si True, la position est � la droite du rectangle de d�limitation du contr�le
    [10] - Si True, la position est � la gauche de rectangle de d�limitation du contr�le

Exemple

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

Global $g_idMemo

Example()

Func Example()
    Local $hGUI, $hHeader, $aHT

    ; Cr�er GUI
    $hGUI = GUICreate("Header", 400, 300)
    $hHeader = _GUICtrlHeader_Create($hGUI)
    _GUICtrlHeader_SetUnicodeFormat($hHeader, True)
    $g_idMemo = GUICtrlCreateEdit("", 2, 24, 396, 274, 0)
    GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
    GUISetState(@SW_SHOW)

    ; Ajouter des colonnes
    _GUICtrlHeader_AddItem($hHeader, "Column 1", 100)
    _GUICtrlHeader_AddItem($hHeader, "Column 2", 100)
    _GUICtrlHeader_AddItem($hHeader, "Column 3", 100)
    _GUICtrlHeader_AddItem($hHeader, "Column 4", 100)

    ; Fait un test de positionnement sur la colonne 2
    $aHT = _GUICtrlHeader_HitTest($hHeader, 110, 10)
    MemoWrite("Item index ...................: " & $aHT[0])
    MemoWrite("In client window .............: " & $aHT[1])
    MemoWrite("In control rectangle .........: " & $aHT[2])
    MemoWrite("On divider ...................: " & $aHT[3])
    MemoWrite("On zero width divider ........: " & $aHT[4])
    MemoWrite("Over filter area .............: " & $aHT[5])
    MemoWrite("Over filter button ...........: " & $aHT[6])
    MemoWrite("Above bounding rectangle .....: " & $aHT[7])
    MemoWrite("Below bounding rectangle .....: " & $aHT[8])
    MemoWrite("To right of bounding rectangle: " & $aHT[9])
    MemoWrite("To left of bounding rectangle : " & $aHT[10])

    ; Boucle jusqu'� ce que l'utilisateur quitte.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>Example

; �crire une ligne dans le contr�le m�mo
Func MemoWrite($sMessage)
    GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite