如何在连接到MySQL数据库之前制作加载场景?

我正在尝试创建一个加载窗口。但是我有MySQL驱动程序的问题。这是问题,当我添加一些对象,在我的情况下GIF(但我也尝试矩形)到我的场景(到组),然后它连接到数据库,舞台不会显示任何对象,直到数据库连接完成。


我尝试了一些我在互联网上找到的例子,但没有任何效果。所以我在这里找到了帮助。这是我尝试的代码。


private void afterClick() {

    showLoading();

    username = name.getText();

    password = passField.getText();

    if ((username.length() == 0) && (password.length() == 0)) {

        Alert.printInformation("Nezadali jste přihlašovací údaje.");

    } else if (username.length() == 0) {

        Alert.printInformation("Nezadali jste login.");

    } else if (password.length() == 0) {

        Alert.printInformation("Nezadali jste heslo.");

    } else {

        DBConnection connection = new DBConnection();

        if(connection.connect()){

            if (check.isSelected()) {

                FileStream.writeToFile("Account.txt", LoginMenu.username + ";" + LoginMenu.password, false);

            } else {

                FileStream.writeToFile("Account.txt", "empty", false);

            }

            App.showScene(MenuName.MainMenu);

        }

    }


}




void showLoading(){


    ImageView loading = new ImageView(new Image("file:Wallpapers/loading.gif"));

    loading.setX(App.width -100);

    loading.setY(App.height - 100);

    loading.setFitWidth(60);

    loading.setFitHeight(60);


    Stage stage = new Stage();

    Group group = new Group();

    Scene scene1 = new Scene(group);

    group.getChildren().add(loading);

    stage.setScene(scene1);

    scene1.setFill(Color.TRANSPARENT);

    stage.initStyle(StageStyle.TRANSPARENT);

    stage.show();

}


凤凰求蛊
浏览 89回答 1
1回答

慕码人2483693

它非常简单!您可以使用重写初始化方法进行一些“pre”移动。class YourControllerClass implements Initializable{    @Override     public void initialize(URL location, ResourceBundle resources) {        //Do stuff     } }你还可以像这样在初始化方法 new Thread 中运行,以防止阻塞你的应用。new Thread(() -> {     //Your stuff }).run();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java