如何在加载文件时保持Java FXML处于活动状态

时间:2015-04-11 18:32:51

标签: java user-interface arraylist fxml

我正在使用JAVA FXML GUI来解析文本文件。用户可以选择要解析的文件,然后按“加载”。当用户单击“加载”时,文件将被解析,并且许多行被添加到ArrayList。然后,用户搜索并操作存储在ArrayList中的解析文本。

有时在将文件加载/写入ArrayList或操作某些行时,GUI无响应。如何将GUI进程与ArrayList处理分开,以便用户始终可以访问GUI?

以下代码启动我的应用程序:

package javafxapp;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class Javafxapp extends Application {

@Override
public void start(Stage stage) throws Exception {
    Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));

    Scene scene = new Scene(root);

    stage.setScene(scene);
    stage.show();
    FXMLDocumentController controller = new FXMLDocumentController();
    controller.openingSound();

}

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    launch(args);
}

}

1 个答案:

答案 0 :(得分:1)

这是一个使用多线程的教科书案例。

有关如何开始使用它的信息和教程,请参阅this JavaFX文档。