Javafx 场景中的鼠标事件动画 scene.addEventHandler(MouseEvent.MOUSE_单击,新建EventHandler()){ @凌驾 公共无效句柄(MouseEvent me){ 圆圈=新圆圈(10,20,50); 圆形。设置填充(颜色。绿色); root.getChildren().add(圆); animation=ParallelTransitionBuilder.create() .节点(圆) .儿童( TranslateTransitionBuilder.create() .持续时间(持续时间.秒(2)) .fromX(me.getSceneX()) .toX(me.getSceneX()+10) .build() ) .cycleCount(时间线不确定) //.autoReverse(真) .build(); } 公共游戏{ 动画。播放(); } //公共停车场(){ //动画。停止()
当我在场景中单击鼠标时,我试图让Javafx 场景中的鼠标事件动画 scene.addEventHandler(MouseEvent.MOUSE_单击,新建EventHandler()){ @凌驾 公共无效句柄(MouseEvent me){ 圆圈=新圆圈(10,20,50); 圆形。设置填充(颜色。绿色); root.getChildren().add(圆); animation=ParallelTransitionBuilder.create() .节点(圆) .儿童( TranslateTransitionBuilder.create() .持续时间(持续时间.秒(2)) .fromX(me.getSceneX()) .toX(me.getSceneX()+10) .build() ) .cycleCount(时间线不确定) //.autoReverse(真) .build(); } 公共游戏{ 动画。播放(); } //公共停车场(){ //动画。停止(),javafx,mouseevent,Javafx,Mouseevent,当我在场景中单击鼠标时,我试图让圆圈移动。这不会发生 我不确定序列是否错误,即在动画开始之前向根添加对象???我对您的代码进行了一些编辑,似乎对我有效 scene.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent me){ Circle circle = new
圆圈移动
。这不会发生
我不确定序列是否错误,即在动画开始之前向根添加对象???我对您的代码进行了一些编辑,似乎对我有效
scene.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent me){
Circle circle = new Circle(10, 20,50);
circle.setFill(Color.GREEN);
root.getChildren().add(circle);
animation = ParallelTransitionBuilder.create()
.node(circle)
.children(
TranslateTransitionBuilder.create()
.duration(Duration.seconds(2))
.fromX(me.getSceneX())
.toX(me.getSceneX()+10)
.build()
)
.cycleCount(Timeline.INDEFINITE)
//.autoReverse(true)
.build();
}
public void play() {
animation.play();
}
//public void stop() {
//animation.stop()
你叫它什么名字!谢谢!效果很好。我是JavaFx新手,我想知道播放和停止方法的目的,因为我正在从ensemble学习。
scene.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent me){
Circle circle = new Circle(10, 20,50);
circle.setFill(Color.GREEN);
root.getChildren().add(circle);
Animation animation = ParallelTransitionBuilder.create()
.node(circle)
.children(
TranslateTransitionBuilder.create()
.duration(Duration.seconds(2))
.fromX(me.getSceneX())
.toX(me.getSceneX()+10)
.build()
)
.cycleCount(Timeline.INDEFINITE)
.autoReverse(true)
.build();
animation.play();
}
});
public void play() {
animation.play();
}