Функция _GUICtrlHeader_Layout

         Описание функции


_GUICtrlHeader_Layout

Возвращает размер и позицию элемента Header

#include <GuiHeader.au3>
_GUICtrlHeader_Layout($hWnd, ByRef $tRect)

Параметры

$hWnd Дескриптор элемента
$tRect Структура $tagRECT, содержащая прямоугольник занимаемый элементом.

Возвращаемое значение

Успех: Возвращает структуру $tagWINDOWPOS, содержащую размер и позицию элемента Header

См. также

$tagRECT, $tagWINDOWPOS

Пример

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

$Debug_HDR = False ; Проверяет ClassName передаваемый в функции. Установите True и используйте дескриптор от другого элемента, чтобы увидеть как это работает

Global $iMemo

_Main()

Func _Main()
    Local $hGUI, $hHeader, $tRect, $tPos

    ; Создаёт GUI
    $hGUI = GUICreate(StringTrimRight(@ScriptName, 4), 400, 300)
    $hHeader = _GUICtrlHeader_Create ($hGUI)
    _GUICtrlHeader_SetUnicodeFormat ($hHeader, True)
    $iMemo = GUICtrlCreateEdit("", 2, 24, 396, 274, 0)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; Добавляет колонки
    _GUICtrlHeader_AddItem ($hHeader, "Колонка 1", 100)
    _GUICtrlHeader_AddItem ($hHeader, "Колонка 2", 100)
    _GUICtrlHeader_AddItem ($hHeader, "Колонка 3", 100)
    _GUICtrlHeader_AddItem ($hHeader, "Колонка 4", 100)

    ; Get header layout
    $tRect = _WinAPI_GetClientRect ($hGUI)
    $tPos = _GUICtrlHeader_Layout ($hHeader, $tRect)

    ; Show header layout
    MemoWrite("Дескриптор ...................: " & DllStructGetData($tPos, "hWnd"))
    MemoWrite("Позиция в Z-последовательности: " & DllStructGetData($tPos, "InsertAfter"))
    MemoWrite("X-координата левого края .....: " & DllStructGetData($tPos, "X"))
    MemoWrite("Y-координата верхнего края ...: " & DllStructGetData($tPos, "Y"))
    MemoWrite("Ширина .......................: " & DllStructGetData($tPos, "CX"))
    MemoWrite("Высота .......................: " & DllStructGetData($tPos, "CY"))
    MemoWrite("Флаги ........................: " & DllStructGetData($tPos, "Flags"))

    ; Цикл выполняется, пока окно не будет закрыто
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc   ;==>_Main

; Записывает строку в элемент для заметок
Func MemoWrite($sMessage)
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite