WM_RBUTTONUP消息

当用户在光标位于窗口的工作区时松开鼠标右键时发布。 如果未捕获鼠标,则会将消息发布到光标下方的窗口。 否则,消息将发布到捕获了鼠标的窗口。

窗口通过其 WindowProc 函数接收此消息。

#define WM_RBUTTONUP                    0x0205

参数

wParam

指示各种虚拟键是否已按下。 此参数可使用以下一个或多个值。

Value 含义
MK_CONTROL
0x0008
Ctrl 键已关闭。
MK_LBUTTON
0x0001
鼠标左键已关闭。
MK_MBUTTON
0x0010
鼠标中键已关闭。
MK_RBUTTON
0x0002
SHIFT 键已关闭。
MK_XBUTTON1
0x0020
第一个 X 按钮已关闭。
MK_XBUTTON2
0x0040
第二个 X 按钮已关闭。

lParam

低序字指定光标的 x 坐标。 坐标相对于工作区的左上角。

高序字指定光标的 y 坐标。 坐标相对于工作区的左上角。

返回值

如果应用程序处理此消息,应返回零。

备注

使用以下代码获取水平和垂直位置:

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

如上所述,x 坐标在返回值的低阶 ;y 坐标位于高阶 (都表示 有符号 值,因为它们可以在具有多个监视器) 的系统上采用负值。 如果返回值分配给变量,则可以使用 MAKEPOINTS 宏从返回值获取 POINTS 结构。 还可以使用 GET_X_LPARAMGET_Y_LPARAM 宏提取 x 或 y 坐标。

重要

请勿使用 LOWORDHIWORD 宏提取光标位置的 x 和 y 坐标,因为这些宏在具有多个监视器的系统上返回不正确的结果。 具有多个监视器的系统可以具有负 x 和 y 坐标, LOWORDHIWORD 会将坐标视为无符号数量。

要求

要求 Value
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Winuser.h (包括 Windowsx.h)

另请参阅

引用

GET_X_LPARAM

GET_Y_LPARAM

GetCapture

SetCapture

WM_RBUTTONDBLCLK

WM_RBUTTONDOWN

概念性

鼠标输入

其他资源

MAKEPOINTS