没有
javafx.application.Platform.isRunning()
之类的方法。
我可以通过其他方式检查平台是否已启动吗?
我想修改我的
javafx.util.concurrent.Task
类以仅在平台实际运行时调用 updateMessage()
等。
这在测试设置中很有用。
如果我测试,我会遇到
java.lang.IllegalStateException: Toolkit not initialized
我认为这可以通过类似的方法轻松避免
if(Platform.isRunning()){
updateMessage("Doing work");
}
前言:
对于聚会来说太晚了,但我的这个图书馆完全消除了这个问题。
https://github.com/davidweber411/SimpleJavaFxApplicationBase
有关文档等更多信息,请查看主页https://wedasoft.com/projects/simple-java-fx-application-base/。
解决方案:
看看班级SimpleJavaXTestBase
。
https://github.com/davidweber411/SimpleJavaFxApplicationBase/blob/master/src/main/java/com/wedasoft/simpleJavaFxApplicationBase/testBase/SimpleJavaFxTestBase.java
使用 Maven Central 中的我的库或将所需的类复制到您需要的项目中:马夫:
<dependency>
<groupId>com.wedasoft</groupId>
<artifactId>simplejavafxapplicationbase</artifactId>
<version>1.7.0</version>
</dependency>
摇篮:
implementation("com.wedasoft:simplejavafxapplicationbase:1.7.0")
文档:
https://wedasoft.com/projects/simple-java-fx-application-base/sjfxab-version-1-7-0/#testing-suite
if (Window.getWindows().isEmpty()){ updateMessage("Doing work"); }