掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
アニメーション設定をコードで記述する際の書き方 (ID:151131)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
お世話になります。 Delphi11.3でFMXアプリケーションを作成しています。 TRectAngleにFloatAnimationを配置しまして、TRectAngleの上にマウスが乗った時点でTRectAngleの幅を広くするアニメーションはビジュアルにできました。 なのですが、TRectAngleが複数ありまして同じ設定を幾つも行うのは大変なので、動的に割当られないかと次のコードを書いてみました。 ::::割愛致します::: var ChildRect: array[0..CST_RECT_COUNT-1] of TRectAngle; WidthAni: array[0..CST_RECT_COUNT-1] of TFloatAnimation; procedure TFrmMenu.FormCreate(Sender: TObject); begin for var i := 0 to High(ChildRect) do begin ChildRect[i] := TRectAngle(FindComponent('RectBtn' + IntToStr(i))); WidthAni[i] := TFloatAnimation.Create(ChildRect[i]); WidthAni[i].Parent := ChildRect[i]; WidthAni[i].AnimationType := TAnimationType.In; WidthAni[i].Duration := 0.1; WidthAni[i].PropertyName := 'Size.Width'; WidthAni[i].StartValue := ChildRect[i].Width; WidthAni[i].StopValue := WidthAni[i].StartValue + 20; WidthAni[i].Trigger := 'IsMouseOver=true'; WidthAni[i].TriggerInverse := 'IsMouseOver=false'; WidthAni[i].Enabled := True; end; end; 上記を実行してTRectAngleの上にマウスを乗せても無反応です。 ビジュアルに配置/設定すると上手く行くので、その差が何かを見てみたところ少しだけヒントが分かりました。 TRectAngleのSizeプロパティ(ここでは、さらにWidthですね)にFloatAnimationが関連していることに。。。合ってますかね(汗)。 恐らくこれが原因ではないかと思うのですが、これを記述する方法が分からず、すみませんがどなたか教えて頂けると助かります。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.