下面把鼠標的移動區域限制在(100,100,200,200)
var rect:TRect;
begin
rect.Left:=100;
rect.Top:=100;
rect.Bottom:=200;
rect.Right:=200;
Windows.ClipCursor(@rect);
下面恢復鼠標的移動區域
Windows.ClipCursor(0);
具體的列子就不用舉了吧,很簡單的。嘻嘻嘻嘻嘻
在Delphi中的幫助是這麼寫的:
The ClipCursor function confines the cursor to a rectangular area on the screen.
If a subsequent cursor position (set by the SetCursorPos function or the mouse)
lIEs outside the rectangle, Windows automatically adjusts the position to keep the
cursor inside the rectangular area.
BOOL ClipCursor(
CONST RECT *lpRect // pointer to structure with rectangle
);
Parameters
lprc
Points to the RECT structure that contains the screen coordinates of the upper-
left and lower-right corners of the confining rectangle. If this parameter is
NULL, the cursor is free to move anywhere on the screen.
Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
The cursor is a shared resource. If an application confines the cursor, it must
release the cursor by using ClipCursor before relinquishing control to another
application.
The calling process must have WINSTA_WRITEATTRIBUTES Access to the window station.