Fixar cursor em uma área

31/08/2004

1

Alguém tem uma função para fixar o cursor do mouse em uma determinada área de um panel?

Por exemplo: fixar o cursor entre o (top 10 até o top 12) e (left 2 até o left 100).


Responder

Posts

31/08/2004

Fórum Vini

Olá,
tem sim, use a função ClipCursor():
procedure TForm1.FormCreate(Sender: TObject);
var
  R: TRect;
begin
  R:= Rect(0, 0, 100, 100);
  ClipCursor(@R);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  ClipCursor(nil); //Libera a movimentação do cursor
end;

Atenção que as coordenadas passadas devem ser coordenadas da tela, para transfomar coordenadas da área cliente em coordenadas da tela, use a função ClientToScreen() :wink:


Espero ter ajudado,
Vinicius;


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira