javafx
アニメーション
サーチ…
タイムラインを使用したプロパティのアニメーション
Button button = new Button("I'm here...");
Timeline t = new Timeline(
new KeyFrame(Duration.seconds(0), new KeyValue(button.translateXProperty(), 0)),
new KeyFrame(Duration.seconds(2), new KeyValue(button.translateXProperty(), 80))
);
t.setAutoReverse(true);
t.setCycleCount(Timeline.INDEFINITE);
t.play();
JavaFXでアニメーションを使用する最も基本的で柔軟な方法は、 Timeline
クラスです。タイムラインは、 KeyFrame
アニメーションの既知の点として使用して動作しKeyFrame
。この場合、開始時( 0 seconds
)にtranslateXProperty
をゼロにする必要があり、最後( 2 seconds
)にプロパティを80
する必要があることが80
ます。また、アニメーションを逆に設定したり、何回実行するかといった他の操作を行うこともできます。
タイムラインは複数のプロパティを同時にアニメートできます:
Timeline t = new Timeline(
new KeyFrame(Duration.seconds(0), new KeyValue(button.translateXProperty(), 0)),
new KeyFrame(Duration.seconds(1), new KeyValue(button.translateYProperty(), 10)),
new KeyFrame(Duration.seconds(2), new KeyValue(button.translateXProperty(), 80)),
new KeyFrame(Duration.seconds(3), new KeyValue(button.translateYProperty(), 90))
); // ^ notice X vs Y
このアニメーションはY
プロパティを0
(プロパティの開始値)から10
秒を1秒間にとり、3秒で90
で終了します。タイムラインの最初の値ではないにもかかわらず、 Y
がアニメーションを開始すると、 Y
はゼロに戻ります。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow