package javafxapplication1; import javafx.application.Application; import javafx.geometry.HPos; import javafx.geometry.VPos; import javafx.scene.Node; import javafx.scene.Scene; import javafx.scene.layout.HBox; import javafx.scene.layout.Priority; import javafx.scene.layout.Region; import javafx.scene.paint.Color; import javafx.scene.web.WebEngine; import javafx.scene.web.WebView; import javafx.stage.Stage; public class JavaFXApplication1 extends Application { private Scene scene; @Override public void start(Stage stage) { // create the scene stage.setTitle("Web View"); scene = new Scene(new Browser(),590,400, Color.web("#666970")); stage.setScene(scene); scene.getStylesheets().add("/webviewsample/BrowserToolbar.css"); stage.setVisible(true); } public static void main(String[] args){ Application.launch(args); } } class Browser extends Region { final WebView browser = new WebView(); final WebEngine webEngine = new WebEngine("http://diveintohtml5.org/canvas.html#coordinates"); public Browser() { //apply the styles getStyleClass().add("browser"); // specify the web engine browser.setEngine(webEngine); getChildren().add(browser); } private Node createSpacer() { Region spacer = new Region(); HBox.setHgrow(spacer, Priority.ALWAYS); return spacer; } @Override protected void layoutChildren() { double w = getWidth(); double h = getHeight(); layoutInArea(browser,0,0,w,h,0, HPos.CENTER, VPos.CENTER); } @Override protected double computePrefWidth(double height) { return 800; } @Override protected double computePrefHeight(double width) { return 600; } }