Wahh, toll.
ich glaub, ich brauch demnächst 2 oder 3 x 76"Monitore - auf meinem 35"Laptop sieht man nicht alle Funktionen.
ich hab die Form heute morgen in Gedanken immer schnell über den CloseButton verlassen, weshalb mir folgende Funktion nicht auffiel:
Was ich (auch im Code) komplett übersehen hatte, war folgende Funktion (hab die Applikation letzte Woche angefangen) , welche mir ermöglicht zu überprüfen, ob die Maus noch über der Form2 schwebt - oder schon weg ist.
Falls weg, soll sie geschlossen werden.
hab das aus den Tiefen des Internets erwischt.
Aber richtig klar, warum die den Focus ansich zieht ist mir auch nicht.
Machen das Get und SetCapture?
und
wie kann ich mir unter Delphi 5 den Luxus erhalten, die Form per Mouse beim Verlassen zu closen?
unter Delphi XE oder so hat man glaub ich: FormHasFocus(), mouseOut() oder sowas.
Delphi-Quellcode:
procedure TMenuForm2.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
warhier := 1;
If GetCapture = 0 then
SetCapture(self.Handle) ;
if PtInRect(Rect(self.Left,
self.Top,
self.Left + self.Width,
self.Top + self.Height),
ClientToScreen(Point(x, y))) then
self.Caption := 'Mouse is over form'
else
begin
close;
end;
// hide
// self.Caption := 'Mouse is outside of form';
end;