JavaFX WebView将不会显示

时间:2014-04-15 13:15:08

标签: java webview javafx

我遇到了JavaFX的问题,当我尝试加载Web视图时,我只得到一个空窗口。有什么想法吗?

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.HPos;
import javafx.geometry.VPos;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Priority;
import javafx.scene.layout.Region;
import javafx.scene.layout.StackPane;
import javafx.scene.paint.Color;
import javafx.scene.text.Text;
import javafx.scene.web.WebEngine;
import javafx.scene.web.WebView;
import javafx.stage.Stage;


/**
 * Created by poa on 15.04.2014.
 */
public class GUI extends Application{

    private Scene scene;
    @Override public void start(Stage stage) {

        stage.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!");
            }
        });
        final WebView browser = new WebView();
        final WebEngine webEngine = browser.getEngine();

        StackPane root = new StackPane();
        root.getChildren().addAll(btn, browser);
        stage.setScene(new Scene(root, 300, 250));
        stage.show();
        stage.setTitle("Web View");
    }

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

1 个答案:

答案 0 :(得分:2)

您没有在WebView中加载任何内容,因此无法在其中看到任何内容。

因为您将Web视图和按钮放在堆栈窗格中,堆栈窗格中的节点一个堆叠在另一个上面,所以空的Web视图位于按钮顶部,因此您无法看到该按钮。