我是一名新的 JavaFX 程序员,目前在从 JavaFX 任务获取结果时遇到问题。我想从任务中获取一个对象。这是我的简单代码。
public class MyClass
{
public static void main(String[] args)
{
final MyTask task = new MyTask();
Thread th = new Thread(task);
th.start();
MyObject result;
task.addEventHandler(WorkerStateEvent.WORKER_STATE_SUCCEEDED,
new EventHandler<WorkerStateEvent>() {
@Override
public void handle(WorkerStateEvent t) {
result = task.getValue();
}
});
}
}
public class MyTask extends Task<MyObject>
{
MyObject object;
@Override
protected MyObject call() throws Exception
{
// some basic processing
return object;
}
}
Run Code Online (Sandbox Code Playgroud)
我得到一个错误,结果对象应该是最终的,如果我这样做,那么我无法获得结果对象中的值。我试过在论坛和谷歌上搜索,但找不到答案。任何帮助将不胜感激。谢谢。