月間予定表コントロール
ここでは、月カレンダー コントロールで使用されるプログラミング要素について説明します。
概要
トピック | 内容 |
---|---|
月カレンダー コントロールについて | 月カレンダー コントロールは、予定表に似たユーザー インターフェイスを実装します。 |
月カレンダー コントロールの使用 | ここでは、月カレンダー コントロールのプログラミングについて説明します。 |
マクロ
トピック | 内容 |
---|---|
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 | 月カレンダー コントロールの「today」 文字列の最大幅を取得します。 これには、ラベル テキストと日付テキストが含まれます。 このマクロを使用するか、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 | 月カレンダー コントロールで「today」として指定された日付の日付情報を取得します。 このマクロを使用するか、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 | 月カレンダー コントロールの「today」の選択を設定します。 このマクロを使用するか、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 | 月カレンダー コントロールの「today」 文字列の最大幅を取得します。 これには、ラベル テキストと日付テキストが含まれます。 このメッセージは、明示的に送信することも、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 | 月カレンダー コントロールで「today」として指定された日付の日付情報を取得します。 このメッセージは、明示的に送信することも、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 | 月カレンダー コントロールの「today」の選択を設定します。 このメッセージは、明示的に送信することも、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 (monthcal) | コントロールがマウス キャプチャを解放しようとしていることを、月カレンダー コントロールの親ウィンドウに通知します。 この通知コードは、WM_NOTIFY メッセージの形式で送信されます。 |
構造体
トピック | 内容 |
---|---|
MCGRIDINFO | カレンダー コントロールの一部に関する情報を含みます。 |
MCHITTESTINFO | 月カレンダー コントロールのヒットテスト ポイントに特化した情報を共有します。 この構造体は、MCM_HITTEST と対応する MonthCal_HitTest マクロと併用されます。 |
NMDAYSTATE | MCN_GETDAYSTATE 通知コードを処理するために必要な情報を共有します。 prgDayState を除くこの構造体のすべてのメンバーは入力用で、MCN_GETDAYSTATE を処理する際は、受信アプリケーションを設定する必要があります。 |
NMSELCHANGE | MCN_SELCHANGE 通知コードの処理に必要な情報を共有します。 |
NMVIEWCHANGE | MCN_VIEWCHANGE 通知コードの処理に必要な情報を共有します。 |
定数
トピック | 内容 |
---|---|
月カレンダー コントロール スタイル | 以下のスタイル定数は、月カレンダー コントロ0ルを作成する際に使用します。 |
データ型
トピック | 内容 |
---|---|
MONTHDAYSTATE | MONTHDAYSTATE データ型は、月の各日付の状態を維持するビットフィールドです。 |