сообщение WM_NCXBUTTONUP
Опубликовано, когда пользователь освобождает первую или вторую кнопку X, пока курсор находится в неклиентной области окна. Это сообщение публикуется в окне, содержащее курсор. Если окно захватило мышь, это сообщение не публикуется.
Окно получает это сообщение через функцию WindowProc .
#define WM_NCXBUTTONUP 0x00AC
-
wParam
-
Слово с низким порядком указывает значение hit-test, возвращаемое функцией DefWindowProc из обработки сообщения WM_NCHITTEST. Список значений хит-теста см. в WM_NCHITTEST.
Слово высокого порядка указывает, какая кнопка была выпущена. Может быть одним из указанных далее.
Значение Значение - XBUTTON1
- 0x0001
Выпущена первая кнопка X. - XBUTTON2
- 0x0002
Выпущена вторая кнопка X. -
lParam
-
Указатель на структуру POINT , содержащую координаты x-и y курсора. Координаты относительно левого верхнего угла экрана.
Если приложение обрабатывает это сообщение, оно должно возвращать значение TRUE. Дополнительные сведения об обработке возвращаемого значения см. в разделе "Примечания".
Используйте следующий код, чтобы получить сведения в параметре wParam .
nHittest = GET_NCHITTEST_WPARAM(wParam);
fwButton = GET_XBUTTON_WPARAM(wParam);
Вы также можете использовать следующий код для получения координат x и y из lParam:
xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);
Важно!
Не используйте макросы LOWORD или HIWORD для извлечения координат x-и y позиции курсора, так как эти макросы возвращают неверные результаты в системах с несколькими мониторами. Системы с несколькими мониторами могут иметь отрицательные координаты x и y, а LOWORD и HIWORD обрабатывают координаты как неподписанные количества.
По умолчанию функция DefWindowProc проверяет указанную точку, чтобы получить положение курсора и выполнить соответствующее действие. При необходимости он отправляет в окно сообщение WM_SYSCOMMAND .
В отличие от WM_NCLBUTTONUP, WM_NCМБ UTTONUP и WM_NCRBUTTONUP сообщений приложение должно возвращать значение TRUE из этого сообщения, если он обрабатывает его. Это позволит программному обеспечению, которое имитирует это сообщение в системах Windows раньше, чем Windows 2000, чтобы определить, обработана ли процедура окна сообщение или с именем DefWindowProc для обработки.
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Верхний колонтитул |
|
-
Ссылка
-
Концептуальной
-
Другие ресурсы