如何在加载文件时保持 Java FXML 处于活动状态
How to keep Java FXML active while file is loading
我正在使用 JAVA FXML GUI 来解析文本文件。用户可以select 解析哪个文件然后按"load"。当用户单击 "load" 时,文件被解析并且许多行被添加到 ArrayList 中。然后,用户搜索并操作存储在 ArrayList 中的解析文本。
有时 loading/writing 将文件添加到 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);
}
}
这是多线程使用的教科书案例
有关如何开始使用它的信息和教程,请参阅 this JavaFX 文档。
我正在使用 JAVA FXML GUI 来解析文本文件。用户可以select 解析哪个文件然后按"load"。当用户单击 "load" 时,文件被解析并且许多行被添加到 ArrayList 中。然后,用户搜索并操作存储在 ArrayList 中的解析文本。
有时 loading/writing 将文件添加到 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);
}
}
这是多线程使用的教科书案例
有关如何开始使用它的信息和教程,请参阅 this JavaFX 文档。