Javafx 删除应用程序启动时的快速白屏

标签 javafx javafx-2

使用 javafx 7 更新 60。 操作系统:Windows 7。

我刚刚从那里获取了 helloworld http://docs.oracle.com/javafx/2/get_started/hello_world.htm

并将根 Pane 的背景更改为红色。

package sample;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class HelloWorld extends Application {
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        primaryStage.setTitle("Hello World!");
        Button btn = new Button();
        btn.setText("Say 'Hello World'");
        btn.setOnAction(new EventHandler<ActionEvent>() {

            @Override
            public void handle(ActionEvent event) {
                System.out.println("Hello World!");
            }
        });

        StackPane root = new StackPane();
        root.setStyle("-fx-background-color: #ff0000;");
        root.getChildren().add(btn);
        primaryStage.setScene(new Scene(root, 300, 250));
        primaryStage.show();
    }
}

当窗口显示时,我可以看到它的背景是白色的,过了一会儿切换到红色。如何删除这个白屏?

最佳答案

好吧,你看到的是实际的舞台背景。 PrimaryStage 有它自己的白色背景,您可以在场景加载之前的一瞬间看到它。没有真正的解决办法,除非您将舞台背景设置为透明,但这也会使整个舞台(包括退出按钮)透明,因此您必须有一种方法让用户退出程序。

关于Javafx 删除应用程序启动时的快速白屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25448982/

相关文章:

java - 从颜色选择器中删除文本

JavaFX - 无法使用已签名的应用程序访问文件系统

java - 在 javafx 应用程序中单击对话框按钮时内存增加

javafx - TableView单元格请求焦点

JavaFX tableview 可调整大小和不可调整大小的列

java - 从 JavaFX 中的不同线程更新 UI

java - 从 JavaFX 2.0 中的 TableView 读取多项选择

java - 如何检查 JavaFx 布局中两个或多个元素是否发生碰撞

java - 如何使用 JavaFX MediaPlayer 多次播放同一音频剪辑

JavaFX 等待 Webview 完全加载或在 15 秒后取消所有内容