今天刚开始使用 JavaFX,不知道如何在对象上进行离散颜色翻转。我可以设置一个带有两个关键帧的时间轴,并让它设置一个对象绑定到它的填充变量的颜色值......但是当我想要的是离散触发器时,我会得到插值颜色。
guivre
问问题
750 次
2 回答
1
或者,您可以在 KeyFrame 的 fillColor 键值上使用 DISCRETE 插值器。
Timeline {
repeatCount: Timeline.INDEFINITE
keyFrames: [
at(0s) { fillColor => Color.BLUE tween Interpolator.DISCRETE; }
at(1s) { fillColor => Color.RED tween Interpolator.DISCRETE; }
]
}
于 2009-08-26T15:11:10.483 回答
0
这可能是您正在寻找的更多内容,但它不会无限重复 - 可能是一个错误?另外,我怀疑有更简洁的方法可以做到这一点。
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.shape.Rectangle;
import javafx.scene.paint.Color;
import javafx.animation.transition.PauseTransition;
import javafx.animation.transition.SequentialTransition;
import javafx.animation.Timeline;
var fillColor: Color;
Stage {
title : "MyApp"
scene: Scene {
width: 400
height: 200
content: [
Rectangle {
x: 10, y: 10
width: 140, height: 90
fill: bind fillColor
}
]
}
}
var seqTransition = SequentialTransition {
repeatCount: Timeline.INDEFINITE
content: [
PauseTransition {
duration: 1s
action: function():Void {
fillColor = Color.BLUE;
}
},
PauseTransition {
duration: 1s
action: function():Void {
fillColor = Color.RED;
}
}
]
}
seqTransition.play();
于 2009-08-26T12:39:23.560 回答