Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 链式多重跃迁_Java_User Interface_Javafx - Fatal编程技术网

Java 链式多重跃迁

Java 链式多重跃迁,java,user-interface,javafx,Java,User Interface,Javafx,关于JavaFX,我有一个小问题。我目前正在为蚂蚁算法做一个用户界面 我想在一个循环中链接多个TranslateTransition。问题是只显示其中一个转换,而不是按创建顺序显示所有的TranslateTransition while(condition){ //some updates... TranslateTransition tt = new TranslateTransition(Duration.millis(2000), myObject); tt.play()

关于JavaFX,我有一个小问题。我目前正在为蚂蚁算法做一个用户界面

我想在一个循环中链接多个
TranslateTransition
。问题是只显示其中一个转换,而不是按创建顺序显示所有的
TranslateTransition

while(condition){
   //some updates...
   TranslateTransition tt = new TranslateTransition(Duration.millis(2000), myObject);
   tt.play();
}
有没有办法确保在播放新动画之前完成以前的动画?
谢谢大家!

使用
onFinished
处理程序启动下一个转换。定义一种方法:

private TranslateTransition createNextTransition(Node myObject) {
    // some updates...
    TranslateTransition tt = new TranslateTransition(Duration.millis(2000), myObject);
    tt.setOnFinished(e -> {
        if (condition) {
            createNextTransition(myObject);
        }
    });
    tt.play();
}
然后再叫一次:

createNextTransition(myObject);

这个问题有点相关:,这个问题问:“我需要创建时间线或动作历史,比如(placeVertex(x,y)、moveVertex(newX,newY)等)和迭代(向前和向后、自动或手动)”。