修改JavaFX定期添加的对象
我有很多对象是通过修改JavaFX定期添加的对象,java,javafx,Java,Javafx,我有很多对象是通过PauseTranation定期添加到场景中的,我希望它们随着时间逐渐淡出,如何实现这样的效果,或者如何修改对象的属性 我一般没有参考资料吗?我发现这很有用: 总而言之:您需要在暂停转换(或任何其他线程)中包含一个时间线,并从head对象更新要更改的属性, 此代码显示如何更新线的不透明度: Line line = new Line(x1,y1,x2,y2); double timeBetweenEachUpdate = .1d;//seconds PauseTransi
PauseTranation
定期添加到场景中的,我希望它们随着时间逐渐淡出,如何实现这样的效果,或者如何修改对象的属性
我一般没有参考资料吗?我发现这很有用:
总而言之:您需要在暂停转换
(或任何其他线程)中包含一个时间线
,并从head对象更新要更改的属性,
此代码显示如何更新线的不透明度:
Line line = new Line(x1,y1,x2,y2);
double timeBetweenEachUpdate = .1d;//seconds
PauseTransition pt = new PauseTransition(Duration.seconds(timeBetweenEachUpdate));
pt.setOnFinished((e) ->{
Timeline timeline = new Timeline();
double fadeTime=1000.0d;//ms
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(fadeTime)),
//here you can put any property , any value you want it to change to
new KeyValue(line.opacityProperty(),0));
timeline.play();
pt.playFromStart();
});
pt.play();
我发现这很有帮助:
总而言之:您需要在暂停转换
(或任何其他线程)中包含一个时间线
,并从head对象更新要更改的属性,
此代码显示如何更新线的不透明度:
Line line = new Line(x1,y1,x2,y2);
double timeBetweenEachUpdate = .1d;//seconds
PauseTransition pt = new PauseTransition(Duration.seconds(timeBetweenEachUpdate));
pt.setOnFinished((e) ->{
Timeline timeline = new Timeline();
double fadeTime=1000.0d;//ms
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(fadeTime)),
//here you can put any property , any value you want it to change to
new KeyValue(line.opacityProperty(),0));
timeline.play();
pt.playFromStart();
});
pt.play();
看看。这回答了我的问题!看看。这回答了我的问题!