如何在钩子中改变鼠标位置

时间:2012-01-14 22:10:42

标签: delphi mouse hook

我想知道如何在MouseProc函数中更改鼠标位置。具体来说,保持Y坐标相同。这是我的功能:

function HookProc(nCode: Integer; MsgID: WParam; Data: LParam): LResult; stdcall;
var
begin        
  PMouseHookStruct(Data)^.pt.Y:=600;

  Result := CallNextHookEx(Hook,nCode,MsgID,Data);
end;

我认为重写MouseHookStruct Y-coord可以解决这个问题,但显然不是。

2 个答案:

答案 0 :(得分:7)

您可能正在寻找ClipCursor功能。无需使用挂钩。

注: 游标是共享资源。如果应用程序限制游标,它必须在放弃对另一个应用程序的控制之前使用ClipCursor释放游标。 该功能将光标限制在屏幕上的矩形区域。

答案 1 :(得分:0)

查看SetCursorPos Win32函数。