【问题标题】:WebView in JavaFX does not show the webpageJavaFX 中的 WebView 不显示网页
【发布时间】:2016-12-01 13:35:04
【问题描述】:

我正在做一个项目。在那个项目中,我必须在 JavaFX GUI 中显示一个网页。但这行不通。它只显示一个白色窗口。我的网络连接已打开。

任何人都可以提出建议,我可以做些什么来在我的 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);
}
}

更新:我将“http://google.com”替换为“https://google.com”。然后完美运行。

【问题讨论】:

  • 您的代码是正确的。确保您在项目中运行正确的 Main 类,检查 IDE 设置,尝试 Clean-Build 您的项目。
  • 确保你有最新版本的Java jdk
  • 我用的是jdk 8.0,请问有什么问题?
  • 你是在windows还是linux? Linux 将 javaFX 单独打包。
  • @pdem 不是 Java 8 的版本。

标签: java javafx webview


【解决方案1】:

当我点击时,您的代码在我的计算机上完美运行,显示谷歌页面。

您也可以尝试在不点击的情况下加载它。

这一定是网络问题,我猜是代理:将这些参数添加到您的启动中:

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

如果你从命令行启动,它会被添加到命令行,或者如果你从 eclipse 启动,它会被添加到 vm 参数中。

【讨论】:

  • 谢谢!我将“http://google.com”替换为“https://google.com”。然后它完美地工作。虽然我不知道为什么!
猜你喜欢
  • 2018-02-24
  • 2016-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-22
  • 2021-05-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多