MCHITTESTINFO 結構 (commctrl.h)
攜帶月份行事曆控制項點擊測試點特有的資訊。 這個結構會與 MCM_HITTEST 訊息和對應的 MonthCal_HitTest 宏搭配使用。
語法
typedef struct {
UINT cbSize;
POINT pt;
UINT uHit;
SYSTEMTIME st;
RECT rc;
int iOffset;
int iRow;
int iCol;
} MCHITTESTINFO, *PMCHITTESTINFO;
成員
cbSize
類型: UINT
這個結構的大小,以位元組為單位。
pt
類型: POINT
要點擊測試的點。
uHit
類型: UINT
輸出成員,接收代表點擊測試作業結果的位旗標。 此值將是下列其中一項:
值 | 意義 |
---|---|
|
指定的點位於行事曆的背景中。 |
|
指定的點不在任何行事曆之外,但在行事曆內控制 RECT。 |
|
指定的點是在行事曆內的特定日期。 lpMCHitTest> st 的SYSTEMTIME結構會設定為指定點的日期。 |
|
指定的點超過行事曆中最小日期 (s) 。 |
|
指定的點超過行事曆中 () 的最大日期。 |
|
指定的點已超過下個月 (部分顯示在目前顯示月份結尾的日期) 。 如果使用者按一下這裡,月曆就會將其顯示捲動到下一個月或一組月份。 |
|
指定的點已超過上個月的日期, (部分顯示在目前顯示的月份結尾) 。 如果使用者按一下這裡,月曆就會將其顯示捲動到上一個月或一組月份。 |
|
指定的點超過一天的縮寫 (「Fri」,例如) 。 lpMCHitTest> st 的SYSTEMTIME結構會設定為頂端資料列中的對應日期。 |
|
指定的點超過周數 (MCS_WEEKNUMBERS 樣式) 。 lpMCHitTest> st 的SYSTEMTIME結構會設定為最左邊資料行中的對應日期。 |
|
指定的點不在月曆控制項上,或是在控制項的非使用中部分。 |
|
指定的點超過月份標題的背景。 |
|
指定的點位於控制項右上角的按鈕上方。 如果使用者按一下這裡,月曆就會將其顯示捲動到下一個月或一組月份。 |
|
指定的點位於控制項左上角的按鈕上方。 如果使用者按一下這裡,月曆就會將其顯示捲動到上一個月或一組月份。 |
|
指定的點位於月份的標題列中,以月份名稱表示。 |
|
指定的點位於月份的標題列中,超過年份值。 |
st
類型: SYSTEMTIME
接收受點擊測試之位置的特定日期和時間資訊。
rc
類型: RECT
點擊測試的位置。
iOffset
類型: int
顯示多個行事歷時,這是在點擊測試點 (以零起始) 的行事曆位移。
iRow
類型: int
行事曆方格的列號,該行事曆方格已結束指定的命中點。 範例:如果您點擊測試月份的第 8 天,也就是月份的第二周, iRow 將會是一個,因為資料列的索引是以零起始的資料列索引。
iCol
類型: int
指定點已結束之行事曆方格的資料行編號。 例如,如果您的星期幾從星期日開始,而當月的第 1 個是星期五,點擊測試會傳回 iCol的五個 (5 個) ,因為星期五是資料列開頭的第五個數據行,使用以零起始的資料行索引。
備註
此控制項中的資料行和資料列使用以零起始的索引系統,也就是第一個資料行或資料列的索引為零。
規格需求
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
標頭 | commctrl.h |