NashornからJavafxアニメーションを行うことができます。 Shekkar Raeeが上記のJavaコードをnashornに移植しました。 nashorn jjsシェルツールを使用して、次のスクリプトを実行できます。
// Usage: jjs -fx textanimation.js
// JavaFX classes used
var BorderPane = Java.type("javafx.scene.layout.BorderPane")
var Button = Java.type("javafx.scene.control.Button")
var Duration = Java.type("javafx.util.Duration")
var FadeTransitionBuilder = Java.type("javafx.animation.FadeTransitionBuilder")
var Scene = Java.type("javafx.scene.Scene")
var Text = Java.type("javafx.scene.text.Text")
var TranslateTransitionBuilder = Java.type("javafx.animation.TranslateTransitionBuilder")
function start(stage) {
//target node
var text = new Text("Title")
//fade-in animation
var fadeIn = new Button("Fade In")
fadeIn.onAction = function(e) {
var fade1 = FadeTransitionBuilder
.create()
.node(text)
.duration(Duration.millis(900))
.fromValue(0)
.toValue(1)
.build()
fade1.play()
}
//fade-out animation
var fadeOut = new Button("Fade Out")
fadeOut.onAction = function(e) {
var fade2 = FadeTransitionBuilder
.create()
.node(text)
.duration(Duration.millis(900))
.fromValue(1)
.toValue(0)
.build()
fade2.play()
}
//slide-down animation
var slideDown = new Button("Slide-Down")
slideDown.onAction = function(event) {
var slide = TranslateTransitionBuilder.create()
.node(text).duration(Duration.millis(900))
.fromY(-400)
.toY(0)
.build()
slide.play()
}
var root = new BorderPane()
root.setCenter(text)
root.setRight(fadeOut)
root.setLeft(fadeIn)
root.setBottom(slideDown)
var scene = new Scene(root, 300, 250)
stage.title = "Animation Demo"
stage.scene = scene
stage.show()
}
これは本当に役立つ情報です。ありがとうございました! :) –
それは私の喜びです!楽しさと幸運を持って! root.setCenter(テキスト) root.setRight(フェードアウト) root.setLeft(フェードイン) root.setBottom(slideDown) がroot.center =テキスト root.rightとして表現することができること –