_GUICtrlMonthCal_GetColorArray
Возвращает цвет указанного участка элемента
#include <GuiMonthCal.au3>
_GUICtrlMonthCal_GetColorArray($hWnd, $iColor)
Параметры
$hWnd | Дескриптор или идентификатор элемента |
$iColor |
Указывает, цвет какого участка элемента необходимо получить: Это может быть одним из следующих значений: $MCSC_BACKGROUND - Цвет фона между месяцами $MCSC_MONTHBK - Цвет фона месяцев $MCSC_TEXT - Цвет текста дней указанного месяца $MCSC_TITLEBK - Цвет фона в заголовке календаря и выбранный день $MCSC_TITLETEXT - Цвет текста в заголовке календаря и выбранный день $MCSC_TRAILINGTEXT - Цвет текста для дней, которые не принадлежат указанному месяцу |
Возвращаемое значение
Успех: Возвращает массив следующего формата:Примечания
Начальные и конечные дни, это те дни, которые принадлежат предыдущему и последующему месяцу, отображаемые на текущем календаре месяца.См. также
_GUICtrlMonthCal_CreateПример
#include <GUIConstantsEx.au3>
#include <GuiMonthCal.au3>
#include <EditConstants.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>
$Debug_MC = False ; Проверяет ClassName передаваемый в MonthCal функции. Установите True и используйте дескриптор от другого элемента, чтобы увидеть как это работает
Global $iMemo
_Main()
Func _Main()
Local $hMonthCal
; Создаёт GUI
GUICreate("Получает массив цвета", 425, 300)
$hMonthCal = GUICtrlCreateMonthCal("", 4, 4, -1, -1, $WS_BORDER, 0x00000000)
; Создаёт элемент для заметок
$iMemo = GUICtrlCreateEdit("", 4, 188, 417, 108, BitOR($WS_VSCROLL, $ES_MULTILINE))
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
GUICtrlSendMsg($iMemo, $EM_SETREADONLY, True, 0)
GUICtrlSetBkColor($iMemo, 0xFFFFFF)
GUISetState()
; _GUICtrlMonthCal_SetColor($hMonthCal, $MCSC_MONTHBK, $CLR_MONEYGREEN)
_GUICtrlMonthCal_SetColor($hMonthCal, $MCSC_TITLEBK, 0xC4FFFF) ; фон заголовка
_GUICtrlMonthCal_SetColor($hMonthCal, $MCSC_MONTHBK, 0x87C4FF) ; фон календаря
; Получает массив цвета элементов календаря
MemoWrite(_FormatOutPut("Цвет фона между месяцами:", _GUICtrlMonthCal_GetColorArray($hMonthCal, $MCSC_BACKGROUND)))
MemoWrite(_FormatOutPut(@crlf & "цвет фона месяцев:", _GUICtrlMonthCal_GetColorArray($hMonthCal, $MCSC_MONTHBK)))
MemoWrite(_FormatOutPut(@crlf & "цвет текста дней указанного месяца:", _GUICtrlMonthCal_GetColorArray($hMonthCal, $MCSC_TEXT)))
MemoWrite(_FormatOutPut(@crlf & "цвет фона в заголовке календаря и выбранный день:", _GUICtrlMonthCal_GetColorArray($hMonthCal, $MCSC_TITLEBK)))
MemoWrite(_FormatOutPut(@crlf & "цвет текста в заголовке календаря и выбранный день:", _GUICtrlMonthCal_GetColorArray($hMonthCal, $MCSC_TITLETEXT)))
MemoWrite(_FormatOutPut(@crlf & "цвет текста для дней, которые не принадлежат указанному месяцу:", _GUICtrlMonthCal_GetColorArray($hMonthCal, $MCSC_TRAILINGTEXT)))
; Цикл выполняется, пока окно не будет закрыто
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>_Main
Func _FormatOutPut($sText, $aColors)
Return $sText & _
@CRLF & @TAB & "COLORREF rgbcolor:" & @TAB & $aColors[1] & _
@CRLF & @TAB & "Hex BGR color:" & @TAB & @TAB & $aColors[2] & _
@CRLF & @TAB & "Hex RGB color:" & @TAB & @TAB & $aColors[3]
EndFunc ;==>_FormatOutPut
; Записывает строку в элемент для заметок
Func MemoWrite($sMessage)
GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite