2016-12-01 4 views
0

Ich arbeite an einem Projekt. In diesem Projekt muss ich eine Webseite in Java FX GUI zeigen. Aber es geht nicht. Es zeigt nur ein weißes Fenster. Meine Netzwerkverbindung ist aktiviert.WebView funktioniert nicht in JavaFX

Kann jemand Vorschläge machen, was ich tun kann, um eine Webseite in meiner JavaFX GUI anzuzeigen?

import javafx.application.Application; 
import javafx.event.ActionEvent; 
import javafx.event.EventHandler; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.scene.control.Hyperlink; 
import javafx.scene.layout.VBox; 
import javafx.scene.web.WebEngine; 
import javafx.scene.web.WebView; 
import javafx.stage.Stage; 

public class Main extends Application { 

@Override 
public void start(Stage stage) { 
    stage.setTitle("HTML"); 
    stage.setWidth(500); 
    stage.setHeight(500); 
    Scene scene = new Scene(new Group()); 
    VBox root = new VBox();  
    final WebView browser = new WebView(); 
    final WebEngine webEngine = browser.getEngine(); 
    Hyperlink hpl = new Hyperlink("google.com"); 
    hpl.setOnAction(new EventHandler<ActionEvent>() { 
     @Override public void handle(ActionEvent e) { 
      webEngine.load("http://google.com"); 
     } 
    }); 

    root.getChildren().addAll(hpl,browser); 
    scene.setRoot(root); 

    stage.setScene(scene); 
    stage.show(); 
} 

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

Ihr Code ist korrekt. Stellen Sie sicher, dass Sie die korrekte Hauptklasse in Ihrem Projekt ausführen, überprüfen Sie die IDE-Einstellungen und versuchen Sie Clean-Build your project. –

+0

Stellen Sie sicher, dass Sie die neueste Version von Java jdk – Sedrick

+0

Ich verwende jdk 8.0, also, was ist das Problem? –

Antwort

0

Ihr Code funktioniert perfekt auf meinem Computer, wenn ich klicke, wird Google-Seite angezeigt.

Sie können auch versuchen, es ohne Klicken zu laden.

Es muss ein Netzwerkproblem sein, nehme ich an den Proxy: add Thesen Argumente zu Ihrem Start:

-Dhttp.proxyHost=youriphost 
-Dhttp.proxyPort=8080 

Es ist auf der Kommandozeile hinzugefügt werden, wenn Sie von der Kommandozeile starten, oder vm Argumente, wenn Sie starten von der Sonnenfinsternis.

+0

danke! Ich habe "http: // google.com" durch "https: // google.com" ersetzt. Dann funktioniert es perfekt. Obwohl ich nicht weiß warum! –