![]() |
AW: OnMouseEnter bzw. -Leave-Events realisieren
Entschuldigt, ja es ist eine Firemonkey-Anwendung. :( :( :(
|
AW: OnMouseEnter bzw. -Leave-Events realisieren
OT zu FireMonkey:
Ich hatte das schon wegen dem "AnimationFloat" vorausgesetzt. Es wäre aber wohl doch nochmal sinnvoll, bei Daniel ein eigenes Unterforum für FM anzuregen (dessen Threads sich evtl. sogar farblich von VCL-Threads unterscheiden). Sonst sind solche Missverständnisse ja vorprogrammiert... |
AW: OnMouseEnter bzw. -Leave-Events realisieren
Ja, da hast du wohl Recht. Tut mir Leid, dass ich das nicht gleich von Anfang an gesagt hab.
Ich hab mich jetzt mit dem Ermitteln des Controls unter dem Mauszeiger versucht. Das OnEnter-Event funktioniert auch, aber irgendwie hab ich nen Knoten im Gehirn, was das OnLeave-Event angeht... :( |
AW: OnMouseEnter bzw. -Leave-Events realisieren
Ok, ich hatte einen absoluten Denkfehler drin. Ich dachte, ich müsste für das OnLeave-Event auch eine Methode schreiben, aber es genügt ja, im OnEnter mit der Methode rekursiv zu prüfen und bei negativem Ergebnis, das gewünschte Panel wieder kleiner zu machen. Ohhhhhh man.... :wall:
Allerdings scheint es Schwierigkeiten zu geben, wenn ich mit der Maus zu schnell über mehrere dieser Panels fahre.... Das hat aber wohl mit der Animation selbst zu tun, wenn ich das Panel verlasse, bevor die Animation zum Größermachen beendet wurde, dann wird es nicht mehr kleiner |
AW: OnMouseEnter bzw. -Leave-Events realisieren
Da die Mouse Events nicht immer zuverlässig feuern hilft eigentlich nur das Pollen über einen Idle-Event.
Beispiel: ![]() |
AW: OnMouseEnter bzw. -Leave-Events realisieren
@Sir Rufo: wie implementiere ich die procedure TForm3.ApplicationEvents1Idle(Sender: TObject; var Done: Boolean); ???
|
AW: OnMouseEnter bzw. -Leave-Events realisieren
entweder
Delphi-Quellcode:
Oder eine Komponente ApplicationEvents auf das Form legen und OnIdle versorgen.
procedure TForm6.FormCreate(Sender: TObject);
begin Application.OnIdle := OnIdle; end; procedure TForm6.OnIdle(Sender: TObject; var Done: Boolean); begin // Dein Code end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz