javafx
Animazione
Ricerca…
Animazione di una proprietà con la cronologia
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();
Il modo più semplice e flessibile per utilizzare l'animazione in JavaFX è con la classe Timeline . Una timeline funziona utilizzando KeyFrame s come punti noti dell'animazione. In questo caso, sa che all'inizio ( 0 seconds ) che translateXProperty deve essere zero e alla fine ( 2 seconds ) che la proprietà deve essere 80 . Puoi anche fare altre cose come impostare l'animazione per invertire e quante volte dovrebbe essere eseguita.
Le linee temporali possono animare più proprietà contemporaneamente:
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
Questa animazione prende la proprietà Y da 0 (valore iniziale della proprietà) a 10 secondi in e termina a 90 in tre secondi. Nota che quando l'animazione ricomincia, Y torna a zero, anche se non è il primo valore nella timeline.
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow