淡入淡出和闪烁效果,两种方式,javaFX实现

//第一种,适合图元组件之间异步
Group root = new Group();
root.getChildren().addAll(自己的图元...);
//每个root有自己的动画节奏
FadeTransition fadeTransition = new FadeTransition(Duration.seconds(1), root);//1秒闪烁,时间长了就是淡入淡出,如4秒
fadeTransition.setFromValue(1);//起始透明度为1
fadeTransition.setToValue(0.1);//终止透明度为0.1
fadeTransition.setCycleCount(Timeline.INDEFINITE);//无限期动画
fadeTransition.setAutoReverse(true);//开启循环
fadeTransition.play();
fadeTransition.stop();

//第二种,适合图元组件之间同步
Timeline timeline = new Timeline();
timeline.setCycleCount(Timeline.INDEFINITE);
timeline.setAutoReverse(true);
timeline.getKeyFrames().clear();
//可多次加入,使多个组件同步动画
timeline.getKeyFrames().addAll(new KeyFrame(Duration.ZERO, new KeyValue(root.opacityProperty(), 1)), new KeyFrame(new Duration(1000), new KeyValue(root.opacityProperty(), 0.1)));
timeline.play();
timeline.stop();
timeline.getKeyFrames().clear();

你可能感兴趣的:(Java,#,JavaFX)