2016-12-01 73 views
0

我正在開發一個項目。在那個項目中,我必須在Java FX GUI中顯示一個網頁。但它不起作用。它只顯示一個白色的窗口。我的網路連線開啓。WebView在JavaFX中不起作用

任何人都可以提出建議我可以做什麼來顯示我的JavaFX GUI中的網頁?

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

你的代碼是正確的。確保在項目中運行正確的Main類,檢查IDE設置,嘗試Clean-Build您的項目。 –

+0

確保您擁有最新版本的Java jdk – Sedrick

+0

我使用jdk 8.0,那麼,有什麼問題? –

回答

0

您的代碼在我的電腦上完美工作,當我點擊,顯示谷歌頁面。

您也可以嘗試加載它,而無需點擊。

它必須是一個網絡問題,我想代理:增加論文的論點到您的推出:

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

它,如果你從命令行啓動,或VM參數如果您啓動要在命令行中添加從日食。

+0

謝謝!我將「http:// google.com」替換爲「https:// google.com」。然後它完美地工作。雖然我不知道爲什麼! –