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


Сообщения

В разделах этого раздела приведены справочные спецификации для определенных входных сообщений указателя и уведомлений.

В этом разделе

Тема Описание
DM_POINTERHITTEST
Отправляется в окно при первом обнаружении входных данных указателя, чтобы определить наиболее вероятный целевой объект ввода для прямых манипуляций.
WM_NCPOINTERDOWN
Публикуется, когда указатель обращается к не клиентской области окна. Сообщение предназначено для окна, по которому указатель делает контакт. Указатель неявно фиксируется в окне, чтобы окно продолжало получать входные данные для указателя до тех пор, пока он не прерывает контакт.
Если окно захватило этот указатель, это сообщение не публикуется. Вместо этого WM_POINTERDOWN размещается в окне, которое захватило этот указатель.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_NCPOINTERUP
Опубликовано, когда указатель, который сделал контакт по не клиентской области контакта разрывов окна. Сообщение предназначено для окна, по которому указатель делает контакт и указатель находится в этом моменте, неявно фиксируется в окне, чтобы окно продолжало получать входные данные для указателя, пока он не прерывает контакт, включая уведомление WM_NCPOINTERUP.
Если окно захватило этот указатель, это сообщение не публикуется. Вместо этого WM_POINTERUP размещается в окне, которое захватило этот указатель.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_NCPOINTERUPDATE
Опубликовано, чтобы предоставить обновление указателя, который сделал контакт по не клиентской области окна или при наведении указателя на некатеризованный контакт перемещается по не клиентской области окна. Пока указатель наведен на указатель, сообщение предназначено для любого окна, на котором происходит переключение указателя. Хотя указатель находится в контакте с поверхностью, указатель неявно фиксируется в окне, по которому указатель сделал контакт, и это окно продолжает получать входные данные для указателя, пока он не прерывает контакт.
Если окно захватило этот указатель, это сообщение не публикуется. Вместо этого WM_POINTERUPDATE размещается в окне, которое захватило этот указатель.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_PARENTNOTIFY
Отправляется в окно, когда значительное действие происходит в окне потомка. Теперь это сообщение расширено, чтобы включить событие WM_POINTERDOWN. При создании дочернего окна система отправляет WM_PARENTNOTIFY непосредственно перед CreateWindow или CreateWindowEx, которая создает окно. При уничтожении дочернего окна система отправляет сообщение перед любой обработкой, чтобы уничтожить окно.
Окно получает это сообщение через функцию WindowProc.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_POINTERACTIVATE
Отправляется в неактивное окно, когда основной указатель создает WM_POINTERDOWN по окну. Пока сообщение остается необработанным, оно перемещается вверх по родительской цепочке окон, пока не достигнет окна верхнего уровня. Приложения могут отвечать на это сообщение, чтобы указать, нужно ли активировать их.
Окно получает это сообщение через функцию WindowProc.
WM_POINTERCAPTURECHANGED
Отправлено в окно, которое теряет запись входного указателя.
Окно получает это сообщение через функцию WindowProc.
WM_POINTERDEVICECHANGE
Отправляется в окно при изменении параметров монитора с подключенным к нему дигитайзером. Это сообщение содержит сведения о масштабировании режима отображения.
WM_POINTERDEVICEINRANGE
Отправляется в окно, когда устройство указателя обнаруживается в диапазоне входного дигитайзера. Это сообщение содержит сведения об устройстве и его близости.
WM_POINTERDEVICEOUTOFRANGE
Отправляется в окно, когда устройство указателя покидает диапазон входного дигитайзера. Это сообщение содержит сведения об устройстве и его близости.
WM_POINTERDOWN
Публикуется, когда указатель связывается с клиентской областью окна. Это входное сообщение предназначено для окна, по которому указатель делает контакт, и указатель неявно фиксируется в окне, чтобы окно продолжало получать входные данные для указателя, пока он не прерывает контакт.
Окно получает это сообщение через функцию WindowProc.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_POINTERENTER
Отправляется в окно, когда новый указатель вводит диапазон обнаружения по окну (наведите указатель) или когда существующий указатель перемещается в границах окна.
WM_POINTERLEAVE
Отправляется в окно, когда указатель покидает диапазон обнаружения по окну (наведите указатель) или когда указатель перемещается за пределы окна.
WM_POINTERROUTEDAWAY
Происходит в процессе получения входных данных, когда входные данные указателя направляются в другой процесс.
WM_POINTERROUTEDRELEASED
Отправляется всем процессам (настроенным для перекрестной цепочки через AddContentWithCrossProcessChaining и не обрабатывает входные данные указателя) при получении сообщения WM_POINTERUP в текущем процессе.
WM_POINTERROUTEDTO
Отправляется при текущих входных данных указателя для существующего идентификатора указателя, переход от одного процесса к другому по содержимому, настроенному для межпроцессной цепочки (AddContentWithCrossProcessChaining).
WM_POINTERUP
Опубликовано, когда указатель, который связался с клиентской областью окна, прерывает контакт. Это входное сообщение предназначено для окна, на котором указатель делает контакт, и указатель находится в этом моменте, неявно фиксируется в окне, чтобы окно продолжало получать входные сообщения, включая уведомление WM_POINTERUP указателя до тех пор, пока он не прерывает контакт.
Окно получает это сообщение через функцию WindowProc.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_POINTERUPDATE
Опубликовано, чтобы предоставить обновление указателя, который связался с клиентской областью окна или на наведении указателя на клиентская область окна. Пока указатель наведен на указатель, сообщение предназначено для любого окна, на котором происходит переключение указателя. Хотя указатель находится в контакте с поверхностью, указатель неявно фиксируется в окне, по которому указатель сделал контакт, и это окно продолжает получать входные данные для указателя, пока он не прерывает контакт.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_POINTERWHEEL
Размещено в окне с фокусом клавиатуры переднего плана при повороте колесика прокрутки.
Окно получает это сообщение через функцию WindowProc.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_POINTERHWHEEL
Размещено в окне с фокусом клавиатуры переднего плана при повороте горизонтального колесика прокрутки.
Окно получает это сообщение через функцию WindowProc.
Важно:
Классические приложения должны быть осведомлены о DPI. Если приложение не учитывает DPI, координаты экрана, содержащиеся в сообщениях указателя и связанных структурах, могут отображаться неточными из-за виртуализации DPI. Виртуализация DPI обеспечивает автоматическую поддержку масштабирования приложений, которые не поддерживают DPI и активны по умолчанию (пользователи могут отключить его). Дополнительные сведения см. в записи High-DPI приложений Win32.
WM_TOUCHHITTESTING
Отправлено в окно при касании, чтобы определить наиболее вероятный целевой объект касания.

Справочник по входным сообщениям указателя