| |
| How can I tell if the mouse is over my form? |
 |
How can I tell if the mouse is over my form?
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 TForm .FormDeactivate(Sender: TObject);
begin
ReleaseCapture;
end;
procedure TForm .FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
If GetCapture = 0 then
SetCapture(Form .Handle);
if PtInRect(Rect(Form .Left,
Form .Top,
Form .Left + Form .Width,
Form .Top + Form .Height),
ClientToScreen(Point(x, y))) then
Form .Caption := 'Mouse is over form' else
Form .Caption := 'Mouse is outside of form';
end;
|
|
| Hits/month |
2,500,000+ |
Downloads (Since May 2000) |
7,393,709 |
| Total Files |
6,023 |
| Forum msgs |
7,670 |
| Articles/FAQs |
70+/900+ |
Top Selling Software at Amazon
|