是否可以在不扩展应用程序的情况下使用时间轴? 我写了一个简单的testClass,但似乎Timline代码没有运行。
import javafx.animation.KeyFrame;
import javafx.animation.Timeline;
import javafx.util.Duration;
/**
* .
*/
public class Time {
public static void main (String []args){
Duration ka = new Duration(5);
Timeline time = new Timeline( new KeyFrame(ka,k->{
System.out.println("Timelineloop");
//sendToAll(update);
}));
time.setCycleCount(Timeline.INDEFINITE);
time.play();
System.out.println("hey");
}
}
编辑代码! 现在我从应用程序类调用Time.start(),但它仍然完成了工作吗?
import javafx.animation.KeyFrame;
import javafx.animation.Timeline;
import javafx.util.Duration;
/**
* .
*/
public class Time extends Thread{
public static void run(){
Duration ka = new Duration(5);
Timeline time = new Timeline( new KeyFrame(ka,k->{
System.out.println("Timelineloop");
//sendToAll(update);
}));
time.setCycleCount(Timeline.INDEFINITE);
time.play();
System.out.println("hey");
} }
答案 0 :(得分:1)
在Timeline
中定义的属性及其事件处理程序的更新将在FX应用程序线程上执行。因此,您需要启动FX工具包才能使它们正常工作。您不必在Application
子类中,但您确实需要FX才能运行。
在您发布的情况下,您只需使用常规旧版java.util.Timer