gpt4 book ai didi

java - 如何从java类调用javafx类?

转载 作者:行者123 更新时间:2023-12-01 10:01:14 24 4
gpt4 key购买 nike

我从我的 java 类中调用了另一个 javafx 类作为后台线程。

     while(true)
{
....
.... (build new arguments)
....

Thread t = new Thread() {
public void run() {
ChartData.main(arguments);
}
};
t.start();
}

我收到错误:

Exception in thread "Thread-7" java.lang.IllegalStateException: Application launch must not be called more than once at om.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:94) at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:75) at javafx.application.Application.launch(Application.java:209)

使用javafx类我只构建了一个散点图并且我的所有其他对象都已在 java 类中实现。

感谢您的帮助。

最佳答案

这不是 JavaFX 的工作方式。

您有 2 个选择:

  1. 使您的程序成为适当的 JavaFX 应用程序,只需更新绘图、GUI 或其他内容的内容即可。 (为此,您不需要额外的线程:只需使用 invokeLater 向 UI 线程提交一些内容即可。)

  2. 在自己的进程中运行单独的 JavaFX,而不是线程,请参阅 ProcessBuilder。虽然这更干净,但您必须考虑如何传递数据以显示给进程

关于java - 如何从java类调用javafx类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36788923/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com