Поделиться через


макрос MonthCal_SetDayState (commctrl.h)

Задает состояния дня для всех месяцев, которые в настоящее время отображаются в элементе управления календарем месяца. Этот макрос можно использовать или явно отправить сообщение MCM_SETDAYSTATE.

Синтаксис

BOOL MonthCal_SetDayState(
   HWND            hmc,
   INT             cbds,
   LPMONTHDAYSTATE rgds
);

Параметры

hmc

Тип: HWND

Обработка элемента управления календарем месяца.

cbds

Тип: INT

Значение типа int, указывающее, сколько элементов в массиве точек.

rgds

Тип: LPMONTHDAYSTATE

Указатель на массив значений MONTHDAYSTATE, определяющих, как элемент управления календарем месяца будет рисовать каждый день на экране.

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

Тип: BOOL

Возвращает ненулевое значение в случае успешного выполнения или нуля.

Замечания

Приложение может явно задать сведения о состоянии дня с помощью этого макроса, но состояние не будет сохраняться при прокрутке другой части календаря в представление. Сведения о состоянии дня обычно задаются в ответ на код уведомления MCN_GETDAYSTATE, который отправляется при каждом обновлении элемента управления.

Массив в rgds должен содержать столько элементов, сколько значений, возвращаемых следующим макросом:

MonthCal_GetMonthRange(hmc, GMR_DAYSTATE, NULL);

Предыдущий макрос возвращает общее количество месяцев, которые находятся в полном или частичном представлении в течение отображения календаря месяца.

Помните, что массив в rgds должен содержать значения MONTHDAYSTATE, соответствующие всем месяцам в отображении элемента управления в хронологическом порядке. К ним относятся два месяца, которые могут быть частично отображены до первого месяца и после последнего месяца.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
целевая платформа Виндоус
заголовка commctrl.h

См. также

использование элементов управления календарем месяца