UDF > GUI > GuiMonthCal >


_GUICtrlMonthCal_GetMinReqRectArray

Obtient le rectangle minimal requis pour afficher un mois complet (tableau)

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

Paramètre

$hWnd ID ou handle du contrôle Month Calendar

Valeur de retour

Succès: Retourne un tableau avec le format suivant:
[0] - Nombre d'éléments
[1] - Coordonnée X du coin supérieur gauche du rectangle,
[2] - Coordonnée Y du coin supérieur gauche du rectangle
[3] - Coordonnée X du coin inférieur droit du rectangle
[4] - Coordonnée Y du coin inférieur droit du rectangle
Échec: Définit @error <> 0.

Remarque

Le minimum requis pour la taille de la fenêtre d'un contrôle calendrier mensuel dépend de la police actuellement sélectionnée, des styles du contrôle, du système métrique et des paramètres régionaux.

Exemple

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

Global $g_idMemo

Example()

Func Example()
    Local $idMonthCal

    ; Crée une GUI
    GUICreate("Month Calendar Get Min Req Rect Array", 400, 300)
    $idMonthCal = GUICtrlCreateMonthCal("", 4, 4, -1, -1, BitOR($WS_BORDER, $MCS_MULTISELECT), 0x00000000)

    ; Crée un contrôle mémo
    $g_idMemo = GUICtrlCreateEdit("", 4, 168, 392, 128, BitOR($WS_VSCROLL, $ES_MULTILINE))
    GUICtrlSetFont($g_idMemo, 9, 400, 0, "Courier New")
    GUICtrlSendMsg($g_idMemo, $EM_SETREADONLY, True, 0)
    GUICtrlSetBkColor($g_idMemo, 0xFFFFFF)
    GUISetState(@SW_SHOW)

    ; Obtient le minimum requis pour hauteur/largeur
    MemoWrite(_FormatOutPut(_GUICtrlMonthCal_GetMinReqRectArray($idMonthCal)))

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

Func _FormatOutPut($aRect)
    Return "Minimum required Width: " & @TAB & $aRect[3] & @CRLF & "Minimum required Height:" & @TAB & $aRect[4]
EndFunc   ;==>_FormatOutPut

; Ecrit un message dans le contrôle memo
Func MemoWrite($sMessage)
    GUICtrlSetData($g_idMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite