MonthCal_SetMonthDelta 函数用于设置月历控件(Month Calendar Control)中的月份间隔。月份间隔是指每次在月历控件上单击下一个或上一个月按钮时,显示的月份数。以下是该函数的声明:
int MonthCal_SetMonthDelta(HWND hMonthCal, int iDelta);

参数:
  •  hMonthCal:要设置的月历控件的句柄。

  •  iDelta:表示月份间隔的整数。正值表示向前的月份数,负值表示向后的月份数。


返回值:
  •  如果函数成功,返回值为设置前的月份间隔。

  •  如果函数失败,返回值为 -1。


使用示例:
#include <Commctrl.h>

// ...

HWND hMonthCal = CreateWindowEx(0, MONTHCAL_CLASS, NULL, 
    WS_BORDER | WS_CHILD | WS_VISIBLE,
    10, 10, 200, 200,
    hwndParent, (HMENU)ID_MONTHCAL, hInstance, NULL);

if (hMonthCal != NULL) {
    // 设置月历控件的月份间隔为向前两个月
    int prevMonthDelta = MonthCal_SetMonthDelta(hMonthCal, -2);

    if (prevMonthDelta != -1) {
        // 设置成功,prevMonthDelta 为设置前的月份间隔
    } else {
        // 处理设置失败的情况
    }
}

请注意,如果在创建月历控件时设置了 MCS_MULTISELECT 样式,MonthCal_SetMonthDelta 函数可能会返回 -1。确保在使用此函数之前,你已经正确初始化了 Common Controls(通过调用 InitCommonControlsEx 函数)。


转载请注明出处:http://www.zyzy.cn/article/detail/24788/Win32 API/Commctrl.h/MonthCal_SetMonthDelta