【问题标题】:jEditorPane as a web browserjEditorPane 作为网络浏览器
【发布时间】:2011-05-08 10:00:18
【问题描述】:

我正在用 Java 创建一个 Web 浏览器。在这个浏览器中我正在使用 浏览器窗口的 JEditorPane。我正在使用“setPage(String url)”方法 显示页面。浏览器可以显示页面但是有 上面提到的一些问题::

  1. 浏览器不显示 java 脚本。
  2. 它没有显示小程序。
  3. 浏览数据没有以正确的方式显示(例如作为浏览器(在图像中显示))。

我的代码是-

JEditorPane editorPane = new JEditorPane();
String url="http://google.co.in";    
editorPane.setEditable(false);
  try {
        editorPane.setPage(url);
  } catch (IOException e) {
      System.err.println("Attempted to read a bad URL: " + url);
  }
}

【问题讨论】:

  • 我不太明白你遇到的第三个问题。也许你可以改写它。
  • @lucasrizoli:我相信他的意思是渲染远非完美。

标签: java html swing jeditorpane


【解决方案1】:

JEditorPane 对 html 和 css 的支持有限。它不支持 javascript 或小程序。它不打算用作网络浏览器。 Sun 承诺会推出更接近浏览器的 JWebPane,但它从未发布过。

如果你真的愿意用java实现浏览器,加入一些开源的java浏览器项目,比如Lobo browser。这样,您就可以将您的知识应用于正确的方向。从头开始没有意义。

【讨论】:

    【解决方案2】:

    JEditorPane 只能呈现非常基本的 HTML。 (即使从 SE6 开始,它也只能理解 HTML 3.2——1997 年的标准!)JEditorPane 不能嵌入小程序或 Flash,也不能解释 JavaScript。

    事实上,JEditorPane 被编写为一个小部件,用于编辑富文本(即具有简单格式的不同大小的文本,如粗体和斜体),而不是用于呈现 HTML、CSS 等的东西。

    您可能想改用JDIC's embeddable browser

    【讨论】:

      【解决方案3】:

      您尝试过 SWT 吗?它使用系统默认浏览器,或者我相信您可以指定 Mozilla 或 Apple 的浏览器(我不是 Apple 粉丝,现在想不出名字)。它不是从头开始编码的,他们必须安装另一个浏览器,但在 Java 中,我认为这是你最好的选择。您可以通过简单的 google 搜索找到同时包含 Swing 和 SWT 的各种库,因此您不必在两者之间进行选择。

      【讨论】:

        【解决方案4】:

        JavaFX 似乎可以处理这个问题。这个试过了吗?

        【讨论】:

        • 目前JavaFX中浏览器的兼容性状况与所有其他浏览器相当。
        猜你喜欢
        • 2021-05-19
        • 2012-10-30
        • 1970-01-01
        • 2013-03-19
        • 1970-01-01
        • 2013-09-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多