能否使鼠标只能在一个范围内移动?
鼠标只能在一定范围内移动,最好是将光标固定在一个位置不能移动。
[解决办法]
不让移动的时候就把光标隐藏掉,需要移动时再显示出来
[解决办法]
SetCapture(Hwnd)
如果这个 Hwnd 中够小的话就相当于不能移动了
ReleaseCapture 释放
[解决办法]
2、限制Mouse的活动范围
procedure TForm1.Button1Click(Sender: TObject);
var
btButton2: TRect;
begin
btButton2 := button2.BoundsRect; // 限制在Button2的范围
MapWindowPoints(handle, 0, btButton2, 2); // 座标换算
ClipCursor(@btButton2); // 限制鼠标移动区域
end;
// 还原
procedure TForm1.Button2Click(Sender: TObject);
var
btScreen: TRect;
begin
btScreen := Rect(0, 0, Screen.Width, Screen.Height);
ClipCursor(@btScreen);
end;
http://www.cnitblog.com/mymaking/archive/2006/06/11/12034.html
[解决办法]
还原不用这样麻烦
这样:ClipCursor(nil);