WM_MouseMove消息

来源:互联网 发布:alpha1机器人软件下载 编辑:程序博客网 时间:2024/06/05 16:02

WM_MouseMove消息的两个参数:wParam、lParam。

参照:http://msdn.microsoft.com/en-us/library/ms645616(v=vs.85).aspx

2011年05月25日 - 朝三暮四 - 朝三暮四的博客
wParam:组合键。有Shift、Ctrl和左、中、右三个键的每一位。
2011年05月25日 - 朝三暮四 - 朝三暮四的博客
lParam:鼠标的位置信息。低位为X坐标;高位为Y坐标。这些坐标都是相对于窗口客户区的左上角。
举个例子:
WM_MouseMove消息 - 朝三暮四 - 朝三暮四的博客
讲解:除了在OnMessage中使用TMsg消息结构外,其他在VCL中都应使用TMessage消息结构。

procedure TForm8.WMMouseMove(var Msg: TMessage);

var s:string;

begin

s:=SysUtils.EmptyStr; //空串;相当于''

if (Msg.WParam and MK_Control)=MK_Control then s:=s+'Ctrl';

if (Msg.WParam and MK_Shift)=MK_Shift then s:=s+'Shift';

if (Msg.WParam and MK_LButton)=MK_LButton then s:=s+'鼠标左键';

Self.Caption:=Format('%s =>X:%d;Y:%d',[s,Msg.LParamLo,Msg.LParamHi]);

end;
效果图: 
WM_MouseMove消息 - 朝三暮四 - 朝三暮四的博客
 

0 0