1.要求限制鼠标只能在这个窗体里移动??
我写的代码如下:
procedure TForm1.FormCreate(Sender: TObject);
var
  frmRect:TRect;
begin
    frmRect.Left:=100;
    frmrect.Top:=100;
    frmrect.Right:=300;
    Frmrect.Bottom:=300;
    ClipCursor(@frmRect);
end;end.或者procedure TForm1.FormCreate(Sender: TObject);
var
  frmRect:TRect;
begin
  GetWindowRect(handle,frmRect);  
  ClipCursor(@frmRect);
end;end.都不能成功??
到底错在哪里??

解决方案 »

  1.   

    那你还不如用下面的代码:
    procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
      if (x>300) or (y>300) then
      showmessage('error');
    end;
      

  2.   

    在form的onmousemove事件里写怎么样
      

  3.   

    要用clipcursor那就这样吧:
    var
      frmRect:TRect;
    begin
        frmrect:=form1.Canvas.ClipRect;
        ClipCursor(@frmRect);
    end;
      

  4.   

    或者:
    procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    var
      frmRect:TRect;
    begin
        frmRect.Left:=form1.Left;
        frmrect.Top:=form1.Top;
        frmrect.Right:=form1.clientWidth+form1.Left;
        Frmrect.Bottom:=form1.clientHeight+form1.Top;
        ClipCursor(@frmRect);
    end;