Уведомление WM_XBUTTONDBLCLK

Сообщение WM_XBUTTONDBLCLK посылается, когда пользователь щелкает два раза первой или второй X-кнопкой, в то время, когда курсор находится в рабочей области окна. Если мышь не захвачена, сообщение посылается в окно под курсором. В противном случае, сообщение помещается в окно, которое захватило мышь.

Окно получает это сообщение через посредство своей функции WindowProc.

Синтаксис

WM_XBUTTONDBLCLK
    WPARAM wParam
    LPARAM lParam;

Параметры

wParam

Младшее слово указывает, находятся ли какие-либо виртуальные клавиши в нажатом состоянии. Оно может состоять из одного или нескольких ниже перечисленных  значений.

Значение Предназначение
MK_CONTROL Клавиша CTRL находится в нажатом состоянии.
MK_MBUTTON Средняя кнопка мыши находится в нажатом состоянии.
MK_RBUTTON Правая кнопка мыши находится в нажатом состоянии.
MK_SHIFT Клавиша SHIFT находится в нажатом состоянии.
MK_XBUTTON1 Первая X-кнопка находится в нажатом состоянии.
MK_XBUTTON2 Вторая X-кнопка находится в нажатом состоянии.

Старшее слово указывает, какая кнопка производила двойной щелчок. Оно может быть одним из ниже перечисленных значений.

Значение Предназначение
XBUTTON1 Двойной щелчок производила первая X-кнопка.
XBUTTON2 Двойной щелчок производила вторая X-кнопка.
lParam

Младшее слово устанавливает x-координату курсора. Координата - относительно левого верхнего угла рабочей области.

Старшее слово устанавливает  y-координату курсора. Координата - относительно левого верхнего угла рабочей области.

Возвращаемое значение

Если приложение обрабатывает это сообщение, оно должно возвратить значение  ИСТИНА (TRUE). Дополнительную информацию об обработке возвращаемого значения, см. раздел Замечания.

Замечания

Используйте нижеследующий код, чтобы получить информацию в параметре wParam:
fwKeys = GET_KEYSTATE_WPARAM (wParam); 
fwButton = GET_XBUTTON_WPARAM (wParam); 

Используйте нижеследующий код, чтобы получить горизонтальную и вертикальную позицию:

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

Вы можете также использовать и макрос  MAKEPOINTS, чтобы преобразовать параметр lParam  в структуру POINTS.

Только окна, которые имеют стиль CS_DBLCLKS, могут получить сообщения WM_XBUTTONDBLCLK, которые, система создает всякий раз, когда пользователь нажимает, отпускает  и снова нажимают X-кнопку в пределах ограничения времени дя двойного щелчка системой. Двойной щелчок одной из этих кнопок фактически создает четыре сообщения: WM_XBUTTONDOWN, WM_XBUTTONUP, WM_XBUTTONDBLCLK и снова WM_XBUTTONUP.

В отличие от сообщения  WM_LBUTTONDBLCLKWM_MBUTTONDBLCLK  и WM_RBUTTONDBLCLK, приложение должно возвратить значение ИСТИНА (TRUE) от этого сообщения, если обрабатывает его. Такое выполнение даст возможность программе, которая моделирует это сообщение в системах  Microsoft ® Windows ® раньше чем Windows 2000, выяснить, или оконная процедура обрабатывала  сообщение или вызвалась функция DefWindowProc, чтобы обработать его.

Смотри также

Обзор Ввод данных от мыши, Уведомления, используемые мышью, DefWindowProc, GET_KEYSTATE_WPARAM, GET_X_LPARAM, GET_XBUTTON_WPARAMGET_Y_LPARAMGetCaptureGetDoubleClickTime, MAKEPOINTSPOINTS,  SetDoubleClickTimeWM_NCHITTESTWM_XBUTTONDOWN, WM_XBUTTONUPWM_SYSCOMMAND

Размещение и совместимость WM_XBUTTONDBLCLK  

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Нет

Windows Me

Да

Windows 98

Нет

Windows 95

Нет

Минимальная версия DLL

Нет

Заголовочный файл

 

- объявлено в

Winuser.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz