Сообщение WM_XBUTTONDOWN посылается тогда, когда пользователь нажимает первую или вторую X-кнопку, в то время, когда курсор находится в нерабочей области окна. Если мышь не захвачена, сообщение посылается в окно под курсором. В противном случае, сообщение посылается в окно, которое захватило мышь.
Окно получает это сообщение через посредство своей функции WindowProc.
Синтаксис
WM_XBUTTONDOWN WPARAM wParam LPARAM lParam; |
Параметры
wParam
Младшее слово указывает, находятся ли какие-либо виртуальные клавиши в нажатом состоянии. Оно может состоять из одного или нескольких ниже перечисленных значений.
Значение | Предназначение |
MK_CONTROL | Клавиша CTRL находится в нажатом состоянии. |
MK_LBUTTON | Левая кнопка мыши находится в нажатом состоянии. |
MK_MBUTTON | Средняя кнопка мыши находится в нажатом состоянии. |
MK_RBUTTON | Правая кнопка мыши находится в нажатом состоянии. |
MK_SHIFT | Клавиша SHIFT находится в нажатом состоянии. |
MK_XBUTTON1 | Первая X-кнопка находится в нажатом состоянии. |
MK_XBUTTON2 | Вторая X-кнопка находится в нажатом состоянии. |
Старшее слово указывает, какая кнопка производила двойной щелчок. Оно может быть одним из ниже перечисленных значений.
Значение | Предназначение |
---|---|
XBUTTON1 | Двойной щелчок производила первая X-кнопка. |
XBUTTON2 | Двойной щелчок производила вторая X-кнопка. |
Младшее слово устанавливает x-координату курсора. Координата - относительно левого верхнего угла рабочей области.
Старшее слово устанавливает y-координату курсора. Координата - относительно левого верхнего угла рабочей области.
Возвращаемое значение
Если приложение обрабатывает это сообщение, оно должно возвратить значение ИСТИНА (TRUE). Дополнительную информацию об обработке возвращаемого значения, см. раздел Замечания.
Замечания
fwKeys = GET_KEYSTATE_WPARAM (wParam); fwButton = GET_XBUTTON_WPARAM (wParam); |
Используйте нижеследующий код, чтобы получить горизонтальную и вертикальную позицию:
xPos = GET_X_LPARAM(lParam); yPos = GET_Y_LPARAM(lParam); |
Вы можете также использовать и макрос MAKEPOINTS, чтобы преобразовать параметр lParam в структуру POINTS.
В отличие от сообщения WM_LBUTTONDBLCLK, WM_MBUTTONDBLCLK и WM_RBUTTONDBLCLK, приложение должно возвратить значение ИСТИНА (TRUE) от этого сообщения, если обрабатывает его. Такое выполнение даст возможность программе, которая моделирует это сообщение в системах Microsoft ® Windows ® раньше чем Windows 2000, выяснить, или оконная процедура обрабатывала сообщение или вызвалась функция DefWindowProc, чтобы обработать его.
Смотри также
Обзор Ввод данных от мыши, Уведомления, используемые мышью, GET_KEYSTATE_WPARAM, GET_X_LPARAM, GET_XBUTTON_WPARAM, GET_Y_LPARAM, GetCapture, MAKEPOINTS, POINTS, WM_XBUTTONDBLCLK, WM_XBUTTONUP
Размещение и совместимость WM_XBUTTONDOWN |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Нет |
Windows Me |
Да |
Windows 98 |
Нет |
Windows 95 |
Нет |
Минимальная версия DLL |
Нет |
Заголовочный файл |
|
- объявлено в |
Winuser.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |