如何在继续之前确保 UI 更新

How to make sure UI updates before continuing

我是 JavaFX 的新手,我有一个启动按钮 object 并用它执行一些方法。问题是 UI 直到 object 执行这些方法后才更新。当我单击按钮时,GUI 没有响应(它在标题栏中显示“(未响应)”。方法完成后,UI 更新。我唯一能做的请参阅修复此问题等待 UI 更新然后执行方法。还有其他方法吗?我该如何解决此问题?

Object myObj;
btn.setOnAction(new EventHandler<ActionEvent>() {
        @Override
        public void handle(ActionEvent event) {
                /* some ui updates */
                myLabel.setText("something");
            try {
                 /* try initiating object and doing some methods with them */
                 myObj = new Object();
                 myObj.doMethod();

您必须为耗时方法创建一个新线程: (我也在用 lambda 表达式重写你的代码... Java8 风格 ;))

Object myObj;
btn.setOnAction((ActionEvent event)->{
    /* some ui updates */
    myLabel.setText("something");
    try {
        /* try initiating object and doing some methods with them */
        Runnable timeConsumingTask = ()-> {
            myObj = new Object();
            myObj.doMethod();
        }
        Thread thread = new Thread(timeConsumingTask);
        thread.start();