如何在没有任何ActionEventJavaFX的情况下使窗口短时间弹出然后消失

如何在没有任何ActionEventJavaFX的情况下使窗口短时间弹出然后消失,javafx,Javafx,您好,我使用JavaFx我想创建一个简单的窗口,它将出现在第一个应用程序将开始,然后它将停留很短的时间,然后它将自动消失,没有任何事件,然后我的主窗口将出现现在 有人能帮我这个主意吗 package x; import javafx.application.Application; import javafx.application.Platform; import javafx.concurrent.Task; import javafx.scene.Scene; import javafx

您好,我使用JavaFx我想创建一个简单的窗口,它将出现在第一个应用程序将开始,然后它将停留很短的时间,然后它将自动消失,没有任何事件,然后我的主窗口将出现现在 有人能帮我这个主意吗

package x;

import javafx.application.Application;
import javafx.application.Platform;
import javafx.concurrent.Task;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

public class AutoHideExmpl extends Application {

public static void main(String[] args) {
    launch(args);
}

@Override
public void start(Stage primaryStage) throws Exception {
    VBox v = new VBox();
    TextField fiiled = new TextField("asdasdf");
    TextField d = new TextField("asdfasdf");
    TextField gd = new TextField("asdf");
    TextField da = new TextField("asdf");
    TextField cd = new TextField("asdf");
    v.getChildren().addAll(fiiled, d, gd, da, cd);
    v.setMinSize(500, 500);
    Scene c = new Scene(v);
    primaryStage.setScene(c);
    primaryStage.show();

    Stage s1 = new Stage();
    VBox v1 = new VBox();
    TextField fiiled1 = new TextField("asdasdf");
    TextField d1 = new TextField("asdfasdf");
    TextField gd1 = new TextField("asdf");
    TextField da1 = new TextField("asdf");
    TextField cd1 = new TextField("asdf");
    v1.getChildren().addAll(fiiled1, d1, gd1, da1, cd1);
    v1.setMinSize(300, 300);
    Scene c1 = new Scene(v1);
    s1.setScene(c1);
    s1.show();
    Task t = new Task<Void>() {

        @Override
        protected Void call() throws Exception {
            Thread.sleep(60000);
            Platform.runLater(() -> {
                s1.close();
            });
            System.out.println("hidding");
            return null;
        }
    };
    Thread ts = new Thread(t);
    ts.start();
  }
}

我希望这能帮助你,如果有的话?写评论

请发布一些您尝试过的代码,并解释为什么它不能满足您的要求。你还需要澄清你的问题(很多)。你说的“短时间”是什么意思?多久?为什么要这样做:你是在加载数据时创建一个启动屏幕吗?我的意思是显示几秒钟我会指定时间,我想这样做是因为我有一个简单的想法为我的应用程序做一个演示,例如photoshop开始启动时,第一个窗口会显示他们的徽标等。例如显示窗口Welcome看起来像是你想要的东西,除了在一段时间内显示外,什么都不做。通常是一个启动屏幕,这就是你所描述的,用途:当启动过程在后台进行时显示。如果没有任何启动过程,则不应使用启动屏幕(这是不必要的延迟)。如果你有启动流程,你的问题就复杂多了。同样,请显示您现有的代码。可能会看到这个(似乎是?)相关问题的答案:。尽管问题涉及预加载程序,但答案中提到了实现类似功能的其他方法(例如,仅创建类似JavaFX的stage),或者使用
-splash:
命令行开关。-@Fadi Fodoy高于ans是否已满使用?如果不告诉我。我会在启动窗口中添加一个图像,然后重新发布我的代码
Thread ts = new Thread(new Runnable() {
        @Override
        public void run() {
            try {
                Thread.sleep(60000);
                Platform.runLater(() -> {
                    s1.close();
                });
                System.out.println("hidding");
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    });
    ts.start();