月历控件

本节包含与月历控件一起使用的编程元素的相关信息。

概述

主题 目录
关于月历控件 月历控件可实现类似于日历的用户界面。
使用月历控件 本节提供有关月历控件编程的信息。

主题 目录
MonthCal_GetCalendarBorder 获取月历控件的边框大小(以像素为单位)。 可以使用此宏或显式发送 MCM_GETCALENDARBORDER 消息。
MonthCal_GetCalendarCount 获取日历控件中当前显示的日历数量。 可以使用此宏或显式发送 MCM_GETCALENDARCOUNT 消息。
MonthCal_GetCalendarGridInfo 获取日历网格的相关信息。
MonthCal_GetCALID 获取给定日历控件的当前日历 ID。 可以使用此宏或显式发送 MCM_GETCALID 消息。
MonthCal_GetColor 检索月历控件给定部分的颜色。 可以使用此宏或显式发送 MCM_GETCOLOR 消息。
MonthCal_GetCurrentView 获取月历控件的视图。 可以使用此宏或显式发送 MCM_GETCURRENTVIEW 消息。
MonthCal_GetCurSel 检索当前选定的日期。 可以使用此宏或显式发送 MCM_GETCURSEL 消息。
MonthCal_GetFirstDayOfWeek 检索月历控件一周的第一天。 可以使用此宏或显式发送 MCM_GETFIRSTDAYOFWEEK 消息。
MonthCal_GetMaxSelCount 检索月历控件中可选择的最大日期范围。 可以使用此宏或显式发送 MCM_GETMAXSELCOUNT 消息。
MonthCal_GetMaxTodayWidth 检索月历控件中“今天”字符串的最大宽度。 这包括标签文本和日期文本。 可以使用此宏或显式发送 MCM_GETMAXTODAYWIDTH 消息。
MonthCal_GetMinReqRect 检索在月历控件中显示完整月份所需的最小大小。 大小信息以 RECT 结构的形式来显示。 可以使用此宏或显式发送 MCM_GETMINREQRECT 消息。
MonthCal_GetMonthDelta 检索月历控件的滚动幅度。 滚动率是用户单击滚动按钮时控件移动其显示的月数。 可以使用此宏或显式发送 MCM_GETMONTHDELTA 消息。
MonthCal_GetMonthRange 检索日期信息(使用 SYSTEMTIME 结构),该信息表示月历控件显示的上限和下限。 可以使用此宏或显式发送 MCM_GETMONTHRANGE 消息。
MonthCal_GetRange 检索为月历控件设置的最小和最大允许日期。 可以使用此宏或显式发送 MCM_GETRANGE 消息。
MonthCal_GetSelRange 检索代表用户当前所选日期范围上限和下限的日期信息。 可以使用此宏或显式发送 MCM_GETSELRANGE 消息。
MonthCal_GetToday 检索指定为月历控件中的“今天”的日期的日期信息。 可以使用此宏或显式发送 MCM_GETTODAY 消息。
MonthCal_GetUnicodeFormat 检索控件的 Unicode 字符格式标志。 可以使用此宏或显式发送 MCM_GETUNICODEFORMAT 消息。
MonthCal_HitTest 确定月历控件的哪个部分位于屏幕上的给定位置。 可以使用此宏或显式发送 MCM_HITTEST 消息。
MonthCal_SetCalendarBorder 设置月历控件的边框大小(以像素为单位)。 可以使用此宏或显式发送 MCM_SETCALENDARBORDER 消息。
MonthCal_SetCALID 设置给定日历控件的日历 ID。 可以使用此宏或显式发送 MCM_SETCALID 消息。
MonthCal_SetColor 设置月历控件给定部分的颜色。 可以使用此宏或显式发送 MCM_SETCOLOR 消息。
MonthCal_SetCurrentView 设置月历控件的视图。 可以使用此宏或显式发送 MCM_SETCURRENTVIEW 消息。
MonthCal_SetCurSel 设置月历控件的当前所选日期。 如果指定日期不在视图中,则控件会更新显示以使其进入视图中。 可以使用此宏或显式发送 MCM_SETCURSEL 消息。
MonthCal_SetDayState 设置月历控件中当前可见的所有月份的日期状态。 可以使用此宏或显式发送 MCM_SETDAYSTATE 消息。
MonthCal_SetFirstDayOfWeek 设置月历控件一周的第一天。 可以使用此宏或显式发送 MCM_SETFIRSTDAYOFWEEK 消息。
MonthCal_SetMaxSelCount 设置月历控件中可选择的最大天数。 可以使用此宏或显式发送 MCM_SETMAXSELCOUNT 消息。
MonthCal_SetMonthDelta 设置月历控件的滚动幅度。 滚动率是用户单击滚动按钮时控件移动其显示的月数。 可以使用此宏或显式发送 MCM_SETMONTHDELTA 消息。
MonthCal_SetRange 设置月历控件的最小和最大允许日期。 可以使用此宏或显式发送 MCM_SETRANGE 消息。
MonthCal_SetSelRange 将月历控件的选项设置为给定的日期范围。 可以使用此宏或显式发送 MCM_SETSELRANGE 消息。
MonthCal_SetToday 设置月历控件的“今天”选项。 可以使用此宏或显式发送 MCM_SETTODAY 消息。
MonthCal_SetUnicodeFormat 设置控件的 Unicode 字符格式标志。 此消息允许在运行时更改控件使用的字符集,而无需重新创建控件。 可以使用此宏或显式发送 MCM_SETUNICODEFORMAT 消息。
MonthCal_SizeRectToMin 计算给定矩形中能容纳多少个日历,然后返回容纳该数量日历所需的矩形最小大小。 可以使用此宏或显式发送 MCM_SIZERECTTOMIN 消息。

消息

主题 目录
MCM_GETCALENDARBORDER 获取边框的大小(以像素为单位)。 可以显式发送此消息,也可以使用 MonthCal_GetCurrentView 宏来发送此消息。
MCM_GETCALENDARCOUNT 获取日历控件中当前显示的日历数量。 可以显式发送此消息,也可以使用 MonthCal_GetCalendarCount 宏来发送此消息。
MCM_GETCALENDARGRIDINFO 获取日历网格的相关信息。
MCM_GETCALID 获取给定日历控件的日历 ID。 可以显式发送此消息,也可以使用 MonthCal_GetCALID 宏来发送此消息。
MCM_GETCOLOR 检索月历控件给定部分的颜色。 可以显式发送此消息,也可以使用 MonthCal_GetColor 宏来发送此消息。
MCM_GETCURRENTVIEW 获取日历的当前视图。 可以显式发送此消息,也可以使用 MonthCal_GetCurrentView 宏来发送此消息。
MCM_GETCURSEL 检索当前选定的日期。 可以显式发送此消息,也可以使用 MonthCal_GetCurSel 宏来发送此消息。
MCM_GETFIRSTDAYOFWEEK 检索月历控件一周的第一天。 可以显式发送此消息,也可以使用 MonthCal_GetFirstDayOfWeek 宏来发送此消息。
MCM_GETMAXSELCOUNT 检索月历控件中可选择的最大日期范围。 可以显式发送此消息,也可以使用 MonthCal_GetMaxSelCount 宏来发送此消息。
MCM_GETMAXTODAYWIDTH 检索月历控件中“今天”字符串的最大宽度。 这包括标签文本和日期文本。 可以显式发送此消息,也可以使用 MonthCal_GetMaxTodayWidth 宏来发送此消息。
MCM_GETMINREQRECT 检索在月历控件中显示完整月份所需的最小大小。 可以显式发送此消息,也可以使用 MonthCal_GetMinReqRect 宏来发送此消息。
MCM_GETMONTHDELTA 检索月历控件的滚动幅度。 滚动率是用户单击滚动按钮时控件移动其显示的月数。 可以显式发送此消息,也可以使用 MonthCal_GetMonthDelta 宏来发送此消息。
MCM_GETMONTHRANGE 检索日期信息(使用 SYSTEMTIME 结构),该信息表示月历控件显示的上限和下限。 可以显式发送此消息,也可以使用 MonthCal_GetMonthRange 宏来发送此消息。
MCM_GETRANGE 检索为月历控件设置的最小和最大允许日期。 可以显式发送此消息,也可以使用 MonthCal_GetRange 宏来发送此消息。
MCM_GETSELRANGE 检索代表用户当前所选日期范围上限和下限的日期信息。 可以显式发送此消息,也可以使用 MonthCal_GetSelRange 宏来发送此消息。
MCM_GETTODAY 检索指定为月历控件中的“今天”的日期的日期信息。 可以显式发送此消息,也可以使用 MonthCal_GetToday 宏来发送此消息。
MCM_GETUNICODEFORMAT 检索控件的 Unicode 字符格式标志。 可以显式发送此消息,也可以使用 MonthCal_GetUnicodeFormat 宏来发送此消息。
MCM_HITTEST 确定月历控件的哪个部分位于屏幕上的给定位置。 可以显式发送此消息,也可以使用 MonthCal_HitTest 宏来发送此消息。
MCM_SETCALENDARBORDER 设置边框的大小(以像素为单位)。 可以显式发送此消息,也可以使用 MonthCal_SetCurrentView 宏来发送此消息。
MCM_SETCALID 设置给定日历控件的日历 ID。 可以显式发送此消息,也可以使用 MonthCal_SetCALID 宏来发送此消息。
MCM_SETCOLOR 设置月历控件给定部分的颜色。 可以显式发送此消息,也可以使用 MonthCal_SetColor 宏来发送此消息。
MCM_SETCURRENTVIEW 设置日历的当前视图。 可以显式发送此消息,也可以使用 MonthCal_SetCurrentView 宏来发送此消息。
MCM_SETCURSEL 设置月历控件的当前所选日期。 如果指定日期不在视图中,则控件会更新显示以使其进入视图中。 可以显式发送此消息,也可以使用 MonthCal_SetCurSel 宏来发送此消息。
MCM_SETDAYSTATE 设置月历控件中当前可见的所有月份的日期状态。 可以显式发送此消息,也可以使用 MonthCal_SetDayState 宏来发送此消息。
MCM_SETFIRSTDAYOFWEEK 设置月历控件一周的第一天。 可以显式发送此消息,也可以使用 MonthCal_SetFirstDayOfWeek 宏来发送此消息。
MCM_SETMAXSELCOUNT 设置月历控件中可选择的最大天数。 可以显式发送此消息,也可以使用 MonthCal_SetMaxSelCount 宏来发送此消息。
MCM_SETMONTHDELTA 设置月历控件的滚动幅度。 滚动率是用户单击滚动按钮时控件移动其显示的月数。 可以显式发送此消息,也可以使用 MonthCal_SetMonthDelta 宏来发送此消息。
MCM_SETRANGE 设置月历控件的最小和最大允许日期。 可以显式发送此消息,也可以使用 MonthCal_SetRange 宏来发送此消息。
MCM_SETSELRANGE 将月历控件的选项设置为给定的日期范围。 可以显式发送此消息,也可以使用 MonthCal_SetSelRange 宏来发送此消息。
MCM_SETTODAY 设置月历控件的“今天”选项。 可以显式发送此消息,也可以使用 MonthCal_SetToday 宏来发送此消息。
MCM_SETUNICODEFORMAT 设置控件的 Unicode 字符格式标志。 此消息允许在运行时更改控件使用的字符集,而无需重新创建控件。 可以显式发送此消息,也可以使用 MonthCal_SetUnicodeFormat 宏来发送此消息。
MCM_SIZERECTTOMIN 计算给定矩形中能容纳多少个日历,然后返回容纳该数量日历所需的矩形最小大小。 可以显式发送此消息,也可以使用 MonthCal_SizeRectToMin 宏来发送此消息。

通知

主题 目录
MCN_GETDAYSTATE 由月历控件发送,用于请求有关如何显示个别日期的信息。 此通知代码仅由使用 MCS_DAYSTATE 样式的月历控件发送,并以 WM_NOTIFY 消息的形式发送。
MCN_SELCHANGE 在当前选择的日期或日期范围发生变化时由月历控件发送。 此通知代码以 WM_NOTIFY 消息的形式发送。
MCN_SELECT 当用户在月历控件中显式选择日期时由月历控件发送。 此通知以 WM_NOTIFY 消息的形式发送。
MCN_VIEWCHANGE 在当前视图发生变化时由月历控件发送。 此通知代码以 WM_NOTIFY 消息的形式发送。
NM_RELEASEDCAPTURE(月历) 通知月历控件的父窗口该控件正在释放鼠标捕获。 此通知以 WM_NOTIFY 消息的形式发送。

结构

主题 目录
MCGRIDINFO 包含日历控件的部件的相关信息。
MCHITTESTINFO 传递月历控件命中测试点的特定信息。 此结构与 MCM_HITTEST 消息和相应的 MonthCal_HitTest 宏一起使用。
NMDAYSTATE 传递处理 MCN_GETDAYSTATE 通知代码所需的信息。 除 prgDayState 外,该结构的所有成员均为输入,接收应用程序必须在处理 MCN_GETDAYSTATE 时设置该结构。
NMSELCHANGE 传递处理 MCN_SELCHANGE 通知代码所需的信息。
NMSELCHANGE 存储处理 MCN_VIEWCHANGE 通知代码所需的信息。

常量

主题 目录
月历控件样式 创建月历控件时使用以下样式常量。

数据类型

主题 目录
MONTHDAYSTATE MONTHDAYSTATE 数据类型是一个位域,用于保存一个月中每天的状态。