WM_MBUTTONDBLCLK消息
当用户在光标位于窗口的工作区时双击中间鼠标按钮时发布。 如果未捕获鼠标,消息将发布到光标下方的窗口。 否则,消息将发布到已捕获鼠标的窗口。
窗口通过其 WindowProc 函数接收此消息。
#define WM_MBUTTONDBLCLK 0x0209
参数
-
wParam
-
指示各种虚拟密钥是否已关闭。 此参数可以是以下一个或多个值。
价值 意义 - MK_CONTROL
- 0x0008
Ctrl 键已关闭。 - MK_LBUTTON
- 0x0001
鼠标左键已关闭。 - MK_MBUTTON
- 0x0010
鼠标中间按钮已关闭。 - MK_RBUTTON
- 0x0002
鼠标右键已关闭。 - MK_SHIFT
- 0x0004
SHIFT 键已关闭。 - MK_XBUTTON1
- 0x0020
XBUTTON1已关闭。 - MK_XBUTTON2
- 0x0040
XBUTTON2已关闭。 -
lParam
-
低序单词指定光标的 x 坐标。 坐标相对于工作区的左上角。
高序单词指定游标的 y 坐标。 坐标相对于工作区的左上角。
返回值
如果应用程序处理此消息,它应返回零。
言论
使用以下代码获取水平和垂直位置:
xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);
如上所述,x 坐标处于返回值的短 短;y 坐标采用高阶 短(两者都表示 有符号 值,因为它们可以在具有多个监视器的系统上采用负值)。 如果将返回值赋给变量,则可以使用 MAKEPOINTS 宏从返回值获取 POINTS 结构。 还可以使用 GET_X_LPARAM 或 GET_Y_LPARAM 宏提取 x 坐标或 y 坐标。
重要
请勿使用 LOWORD 或 HIWORD 宏提取游标位置的 x 坐标和 y 坐标,因为这些宏在具有多个监视器的系统上返回不正确的结果。 具有多个监视器的系统可以具有负 x 和 y 坐标,LOWORD 和 HIWORD 将坐标视为无符号数量。
只有具有 CS_DBLCLKS 样式的窗口才能接收 WM_MBUTTONDBLCLK 消息,当用户按下、释放和再次按下系统双击时间限制内的中间鼠标按钮时,系统会生成这些消息。 双击中间鼠标按钮实际上会生成四条消息:WM_MBUTTONDOWN、WM_MBUTTONUP、WM_MBUTTONDBLCLK,然后再次 WM_MBUTTONUP。
要求
要求 | 价值 |
---|---|
支持的最低客户端 |
Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 |
Windows 2000 Server [仅限桌面应用] |
页眉 |
|