执行循环时,JavaFX GUI会一直冻结

时间:2017-08-30 15:26:02

标签: selenium javafx

我到处都读过。我无法解决这个问题。

public class Controller {
    @FXML
    public Label myTimes;
    @FXML
    private TextField username;
    @FXML
    private TextField password;
    @FXML
    private TextField totalTimes;
    public void times (ActionEvent event) {
        String usernameVar = username.getText();
        String passwordVar = password.getText();
        String times = totalTimes.getText();
        main Main = new main();
        Main.booster(usernameVar, passwordVar, Integer.parseInt(times));
        myTimes.setText("Completed: " + Integer.toString(Main.timess));

    }

助推器方法是打开硒并在网上执行任务。但是当它这样做时,GUI会冻结,直到任务完成。我尝试过使用任务和线程,但没有运气(我真的不知道如何使用它们)。有谁能请给我一个解决方案?

1 个答案:

答案 0 :(得分:-1)

Java中有两个选项:

  1. 使用Thread

    文档:Thread

  2. 使用Task(某种Runnable Class

    文档:Task

    小例子:Task with ProgressBar

  3. 我使用normaly Task,但这仅仅是品味问题

    P.S。:线程或任务中的代码在后台运行,而其他代码继续正常