Is mouse over Form?
< Continued from page 4
To tell if the mouse is over Delphi Form, we can use the GetCapture() windows API function to capture the mouse. See the Windows documentation for additional information and limitations on mouse capturing.
~~~~~~~~~~~~~~~~~~~~~~~~~
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;
~~~~~~~~~~~~~~~~~~~~~~~~~
Delphi tips navigator:
» Change the Windows Start Button bitmap
« Controling sound volume from code
To tell if the mouse is over Delphi Form, we can use the GetCapture() windows API function to capture the mouse. See the Windows documentation for additional information and limitations on mouse capturing.
~~~~~~~~~~~~~~~~~~~~~~~~~
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;
~~~~~~~~~~~~~~~~~~~~~~~~~
Delphi tips navigator:
» Change the Windows Start Button bitmap
« Controling sound volume from code
Source...