检索显示完整月历所需的最低尺寸
#Include <GuiMonthCal.au3>
_GUICtrlMonthCal_GetMinReqRectArray($hWnd)
$hWnd | 控件句柄 |
成功: | 返回如下格式的数组: | ||
[0] - 元素数量 | |||
[1] - 月历左上角 X 坐标 | |||
[2] - 月历左上角 Y 坐标 | |||
[3] - 月历右下角 X 坐标,如[1]为 0 , 则此值可看作月历的宽度 | |||
[4] - 月历右下角 Y 坐标,如[2]为 0 , 则此值可看作月历的高度 | |||
失败: | 返回 FalseSuccess:True, Handle is set to 0 ( | 成功: | 返回 True, 句柄设置为 0 ) Failure:False ( |
失败: | 返回 False ) |
#include <GUIConstantsEx.au3>
#include <GuiMonthCal.au3>
#include <EditConstants.au3>
#include <WindowsConstants.au3>
$Debug_MC = False ; 检查传递给 MonthCal 函数的类名, 设置为 True 并使用指向另一控件的句柄来检查它是否工作
Global $iMemo
_Main()
Func _Main()
Local $hMonthCal
; 创建 GUI
GUICreate("Month Calendar Get Min Req Rect Array", 400, 300)
$hMonthCal = GUICtrlCreateMonthCal("", 4, 4, -1, -1, BitOR($WS_BORDER, $MCS_MULTISELECT), 0x00000000)
; 创建 memo 控件
$iMemo = GUICtrlCreateEdit("", 4, 168, 392, 128, BitOR($WS_VSCROLL, $ES_MULTILINE))
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
GUICtrlSendMsg($iMemo, $EM_SETREADONLY, True, 0)
GUICtrlSetBkColor($iMemo, 0xFFFFFF)
GUISetState()
; 获取需要的最小高度/宽度
MemoWrite(_FormatOutPut(_GUICtrlMonthCal_GetMinReqRectArray($hMonthCal)))
; 循环直到用户退出
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>_Main
Func _FormatOutPut($aRect)
Return "Minimum required Width: " & @TAB & $aRect[3] & @CRLF & "Minimum required Height:" & @TAB & $aRect[4]
EndFunc ;==>_FormatOutPut
; 写入消息到 memo
Func MemoWrite($sMessage)
GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite