- - * - WhiteUnicorn - * - -




* #WhiteUnicorn/ StartPage/ Documentation/DelphiFAQ >


Frequently Asked Questions

How can I tell if the mouse is over my form?

Question:

How can I tell if the mouse is over my form?

Answer:

You can use the GetCapture() windows API function to 

capture the mouse. See the Windows documentation for 

additional information and limitations on mouse capturing.



Example:



procedure TForm1.FormDeactivate(Sender: TObject);

begin

  ReleaseCapture;

end;



procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,

  Y: Integer);

begin

  If GetCapture = 0 then

    SetCapture(Form1.Handle);

  if PtInRect(Rect(Form1.Left,

                   Form1.Top,

                   Form1.Left + Form1.Width,

                   Form1.Top + Form1.Height),

                   ClientToScreen(Point(x, y))) then

  Form1.Caption := 'Mouse is over form' else

  Form1.Caption := 'Mouse is outside of form';

end;



* #WhiteUnicorn/ StartPage/ Documentation/DelphiFAQ >



- - * - Anastasija aka WhiteUnicorn - * - - LJLiveJournal
PFPhotoFile