如何使用Java线程运行javafx组件?

时间:2013-11-23 05:38:11

标签: java multithreading javafx

如何从run()方法使用Java线程运行javafx组件?它甚至得到了支持吗?谢谢!

1 个答案:

答案 0 :(得分:1)

不允许从Application线程以外的任何线程修改实时场景。如果你想从java.lang.Thread开始,那么在run()实施的某个地方你需要这个:

Platform.runLater(new Runnable(){
  @Override
  public void run(){
    // change your scene graph here
  }
});  

这会导致您在Application主题上发生所有更改。如果您有一个要重复执行的任务,请查看javafx.concurrent.Service<V>。文档说:

  

作为JavaFX UI库的一部分,服务了解JavaFX   应用程序线程,旨在减轻应用程序   开发人员负责处理交互的多线程代码   用户界面。