Функция _GUICtrlMonthCal_GetRange

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


_GUICtrlMonthCal_GetRange

Возвращает минимальную и максимальную доступные для выбора даты

#include <GuiMonthCal.au3>
_GUICtrlMonthCal_GetRange($hWnd)

Параметры

$hWnd Дескриптор или идентификатор элемента

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

Успех: Возвращает структуру $tagMCRANGE

См. также

_GUICtrlMonthCal_SetRange, _GUICtrlMonthCal_GetRangeMax, _GUICtrlMonthCal_GetRangeMaxStr, _GUICtrlMonthCal_GetRangeMin, _GUICtrlMonthCal_GetRangeMinStr, $tagMCRANGE

Пример

#include <GUIConstantsEx.au3>
#include <GuiMonthCal.au3>
#include <WindowsConstants.au3>

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

Global $iMemo

_Main()

Func _Main()
    Local $tRange, $hMonthCal

    ; Создаёт GUI
    GUICreate("Получает диапазон доступных дат", 400, 300)
    $hMonthCal = GUICtrlCreateMonthCal("", 4, 4, -1, -1, BitOR($WS_BORDER, $MCS_MULTISELECT), 0x00000000)

    ; Создаёт элемент для заметок
    $iMemo = GUICtrlCreateEdit("", 4, 188, 392, 108, 0)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; Установить / получить диапазон доступных дат
    _GUICtrlMonthCal_SetRange($hMonthCal, @YEAR, 1, 1, @YEAR, 12, 31)
    $tRange = _GUICtrlMonthCal_GetRange($hMonthCal)
    MemoWrite("Минимально  доступная дата: " & StringFormat("%02d/%02d/%04d", DllStructGetData($tRange, "MinMonth"), _
            DllStructGetData($tRange, "MinDay"), _
            DllStructGetData($tRange, "MinYear")))
    MemoWrite("Максимально доступная дата: " & StringFormat("%02d/%02d/%04d", DllStructGetData($tRange, "MaxMonth"), _
            DllStructGetData($tRange, "MaxDay"), _
            DllStructGetData($tRange, "MaxYear")))

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

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