モジュール javafx.graphics
パッケージ javafx.animation

クラスTimeline



  • public final class Timeline
    extends Animation
    Timelineを使用して、すべてのWritableValueのフリー・フォーム・アニメーションを定義することができます。たとえば、すべてJavaFX Propertiesです。

    Timelineは、1つ以上のKeyFrameで定義し、個々のKeyFrameKeyFrame.timeで指定した順序で順番に処理するために使用します。 アニメーション化されるプロパティは、KeyFrame.valuesでキー値として定義し、Timelineの初期位置(Timelineの方向によって異なる)を基準にしてKeyFrameの指定時間にターゲット・キー値に(またはターゲット・キー値から)補間されます。

    Timelineでは、個々のKeyFrameは指定された時間間隔が経過した時点以降に処理され、KeyFrameの処理タイミングは保証されません。

    Animation.cycleDurationProperty()は、TimelineのKeyFrameの最大時間値に設定されます。

    time==0sの瞬間にKeyFrameが指定されていない場合は、Animation.play()またはAnimation.playFromStart()の呼出し時点における最新のターゲット値を使用して合成されます。

    実行中のTimelinekeyFramesは変更できません。 実行中のTimelinekeyFramesの値が変更された場合、新しい値を反映するには、停止して再度開始する必要があります。

    単純なTimelineの作成例を次に示します。

    
     final Timeline timeline = new Timeline();
     timeline.setCycleCount(2);
     timeline.setAutoReverse(true);
     timeline.getKeyFrames().add(new KeyFrame(Duration.millis(5000),
       new KeyValue (node.translateXProperty(), 25)));
     timeline.play();
     

    このTimelineは10秒間実行され、ノードはx軸に沿って値25までアニメーション化され、2回目のサイクルに0まで戻ります。

    警告: 実行中のTimelineはFXランタイムから参照されます。 Timelineを無限にした場合、適切に停止しないと、メモリー・リークが発生する可能性があります。 アニメーション化されるプロパティを持つすべてのオブジェクトがガベージ・コレクションの対象となるわけではありません。

    導入されたバージョン:
    JavaFX 2.0
    関連項目:
    Animation, KeyFrame, KeyValue
    • コンストラクタの詳細

      • Timeline

        public Timeline​(double targetFramerate,
                        KeyFrame... keyFrames)
        Timelineのコンストラクタ。 このコンストラクタでは、Animation.targetFramerateを定義できます。
        パラメータ:
        targetFramerate - このTimelineのカスタム・ターゲット・フレームレート
        keyFrames - このTimelineのキー・フレーム
      • Timeline

        public Timeline​(KeyFrame... keyFrames)
        Timelineのコンストラクタ。
        パラメータ:
        keyFrames - このTimelineのキー・フレーム
      • Timeline

        public Timeline​(double targetFramerate)
        Timelineのコンストラクタ。 このコンストラクタでは、Animation.targetFramerateを定義できます。
        パラメータ:
        targetFramerate - このTimelineのカスタム・ターゲット・フレームレート
      • Timeline

        public Timeline​()
        Timelineのコンストラクタ。
    • メソッドの詳細

      • stop

        public void stop​()
        アニメーションを停止し、再生ヘッドを初期位置にリセットします。 アニメーションが現在実行中でない場合、このメソッドを使用しても効果はありません。

        注意:

        • stop()の呼出しは非同期であり、Animationは即座に停止されるとはかぎりません。
        オーバーライド:
        stop 、クラス:  Animation