如何将鼠标锁定在一定的范围内呢?
请在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;

解决方案 »

  1.   

    限:
    var
        MyRgn:              HRGN;
    begin
            MyRgn:=CreateRectRgn(0,0,100,100);
            SelectClipRgn(Handle,MyRgn);
    end;

            SelectClipRgn(handle,0);
      

  2.   

    如何将鼠标锁定在一定的范围内呢?
    请在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;
      

  3.   

    谢谢两位大虾,不过第一个实验不成功
    你们是不是用了api函数啊?怎么在delphi的帮助里有的都没有找到