procdure TForm1.Button1Click(Sender: TObject); var rtButton2: TRect; begin //获取Button2组件的坐标 rtButton2:= Button2.RoundsRect; //将坐标转换为屏幕坐标 MapWindowPoints(Handle, 0, rtButton2, 2); ClipCursor(@rtButton2); end;procedure TForm1.Button2Click(Sender: TO b j e c t ) ; begin //取消鼠标移动范围的限制 ClipCursor(0); end;
var
rtButton2: TRect;
begin
//获取Button2组件的坐标
rtButton2:= Button2.RoundsRect;
//将坐标转换为屏幕坐标
MapWindowPoints(Handle, 0, rtButton2, 2);
ClipCursor(@rtButton2);
end;procedure TForm1.Button2Click(Sender: TO b j e c t ) ;
begin
//取消鼠标移动范围的限制
ClipCursor(0);
end;
请在Form中放置二个 Button, 然後分别为这两个按钮定义OnClick响应事件如下:
// 限制
procedure TForm1.Button1Click(Sender: TObject);
var
rtButton2: TRect;
begin
rtButton2 := Button2.BoundsRect;
MapWindowPoints(handle, 0, rtButton2, 2); // 座标换算
ClipCursor(@rtButton2); // 限制鼠标移动区域
end;// 还原
procedure TForm1.Button2Click(Sender: TObject);
var
rtScreen: TRect;
begin
rtScreen := Rect(0, 0, Screen.Width, Screen.Height);
ClipCursor(@rtScreen);
end;
var
rtButton2: TRect;
begin
rtButton2 := Button2.BoundsRect;
MapWindowPoints(handle, 0, rtButton2, 2); // 座标换算
ClipCursor(@rtButton2); // 限制鼠标移动区域
end;
// 还原
procedure TForm1.Button2Click(Sender: TObject);
var
rtScreen: TRect;
begin
rtScreen := Rect(0, 0, Screen.Width, Screen.Height);
ClipCursor(@rtScreen);
有问题请发信息到我的E-mail:[email protected]