Einzelnen Beitrag anzeigen

jziersch

Registriert seit: 9. Okt 2003
Ort: München
240 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: [FMX] Timer in eigener Komponente funktionieren nicht

  Alt 8. Apr 2022, 13:14
Du kannst für Deine Zwecke schon eine TFloatAnimation verwenden. PropertyName muss aber auf eine existierende property des Parent gesetzt werden, sonst geht nichts.

Dennoch würde ich empfehlen eine abgeleitete Animation zu verwenden

Code:
  TMyFloatAnimation = class(TFloatAnimation)
  protected
    MyControl: TMyButton;
    procedure ProcessAnimation; override;
    procedure FirstFrame; override; // macht nichts
  end;
und in den Prozeduren die zu verändernde property direkt zuzuweisen.

Code:
procedure TMyFloatAnimation .ProcessAnimation;
var
  V : Single;
begin
  if (NormalizedTime=0) or (Duration=0) then
       V := StartValue
  else V := StartValue + (StopValue-StartValue) * NormalizedTime;
  ---> mach was mit V
end;
Deine Animation kann immer von 0-1 laufen, für die Rotation halt dann mit 360 oder 2pi multiplizieren.
WPCubed GmbH
Komponenten für Delphi:
WPTools, wPDF, WPViewPDF
  Mit Zitat antworten Zitat