小编JMa*_*ark的帖子

JavaFX 从任务返回值

我是一名新的 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)

我得到一个错误,结果对象应该是最终的,如果我这样做,那么我无法获得结果对象中的值。我试过在论坛和谷歌上搜索,但找不到答案。任何帮助将不胜感激。谢谢。

java javafx

1
推荐指数
1
解决办法
6934
查看次数

标签 统计

java ×1

javafx ×1