【问题标题】:How to display part of an HTML document in Java如何在 Java 中显示 HTML 文档的一部分
【发布时间】:2011-12-04 15:26:52
【问题描述】:

我有一个应用程序,我需要在 swing JPanel 中显示 HTML 文档的一个特定部分。要显示的部分取决于用户在任何给定时间所做的事情。

我知道 JEditorPane 可以显示简单的 HTML,事实上,就 HTML 支持而言,这对我的需求来说已经绰绰有余了。但是我不认为我可以使用它来仅显示原始 HTML 文件的一部分。

我想把每个部分放在一个 div 中,然后用 CSS 隐藏所有 div(显示:无),并通过在我想要显示的部分上设置 display: block 只显示目标部分。不幸的是,JEditorPane 对 CSS 的支持有限,而且这似乎不包括“display”属性。

在我去实现一些更复杂的东西之前,有没有什么简单的方法可以实现这个目标?

谢谢。

【问题讨论】:

    标签: java html swing


    【解决方案1】:

    依靠JEditorPane 的 CSS 支持,我没有找到一种方法来做我想做的事。我最终做的是手动解析 HTML 文档并将其拆分为“片段”(代表部分的顶级 DIV),然后根据需要通过 JEditorPane.setText 显示每个部分。

    【讨论】:

      【解决方案2】:

      覆盖 ViewFactory 并替换 DIV 视图。如果它们应该被隐藏,让它们从 getXXXSpan 方法返回 0。

      例如查看部分折叠相关代码http://java-sl.com/collapse_area.html

      【讨论】:

      • 这是一个非常有趣的方法。能再详细一点吗?
      【解决方案3】:

      你可以试试 Cobra:

      http://lobobrowser.org/cobra.jsp

      【讨论】:

      猜你喜欢
      • 2023-03-03
      • 2019-02-20
      • 2010-09-08
      • 2019-09-01
      • 2014-02-01
      • 1970-01-01
      • 2017-01-25
      • 2021-09-30
      • 1970-01-01
      相关资源
      最近更新 更多