Структура 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 календаря. |
|
Данный момент был на определенную дату в календаре. Для структуры SYSTEMTIME в lpMCHitTest>st задана дата в заданной точке. |
|
Указанная точка превышает минимальные даты в календаре. |
|
Указанная точка превышает максимальное число дат в календаре. |
|
Указанная точка превышает дату следующего месяца (частично отображается в конце текущего отображаемого месяца). Если пользователь щелкает здесь, календарь месяца прокрутит отображение до следующего месяца или набора месяцев. |
|
Данный момент был превышен даты предыдущего месяца (частично отображается в конце текущего отображаемого месяца). Если пользователь щелкает здесь, календарь месяца прокрутит отображение до предыдущего месяца или набора месяцев. |
|
Данная точка была сокращена в течение дня (например, "Пт"). Для структуры SYSTEMTIME в lpMCHitTest>st задается соответствующая дата в верхней строке. |
|
Указанная точка была более недели (только MCS_WEEKNUMBERS стиле). Для структуры SYSTEMTIME в lpMCHitTest>st задана соответствующая дата в крайнем левом столбце. |
|
Данная точка не находилась в элементе управления "Календарь месяца" или находилась в неактивной части элемента управления. |
|
Данный момент был на фоне названия месяца. |
|
Указанная точка находилась над кнопкой в правом верхнем углу элемента управления. Если пользователь щелкает здесь, календарь месяца прокрутит отображение до следующего месяца или набора месяцев. |
|
Указанная точка находилась над кнопкой в левом верхнем углу элемента управления. Если пользователь щелкает здесь, календарь месяца прокрутит отображение до предыдущего месяца или набора месяцев. |
|
Данная точка была в строке заголовка месяца, более месяца названия. |
|
Указанная точка находилась в строке заголовка месяца за год. |
st
Тип: SYSTEMTIME
Получает сведения о дате и времени, относящиеся к расположению, которое было проверено на попадание.
rc
Тип: RECT
Расположение, проверенное на попадание.
iOffset
Тип: int
При отображении нескольких календарей это смещение календаря в точке проверки попадания (от нуля).
iRow
Тип: int
Номер строки для сетки календаря, на которую была выполнена указанная точка попадания. Пример. Если вы проверили 8-е число месяца, то есть во вторую неделю месяца, iRow будет иметь значение , так как индекс строки является индексом строки от нуля.
iCol
Тип: int
Номер столбца для сетки календаря, на которую была выполнена данная точка. Например, если неделя начинается с воскресенья, а 1-е число месяца — пятница, проверка нажатия первого числа вернет пять (5) для iCol, так как пятница находится в пятом столбце с начала строки, используя индекс столбца от нуля.
Комментарии
Столбцы и строки в этом элементе управления используют систему индексов с нуля, то есть первый столбец или строка имеет нулевой индекс.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | commctrl.h |