你知道哪些库/方法可以在Swing中做一些基本的HTML表示?你能评论一下你的经历吗?
答案 0 :(得分:2)
一个好的纯Java解决方案是JWebEngine。它使HTML 4非常好。
答案 1 :(得分:1)
我有一段时间没试过这个,但快速谷歌搜索显示了一些可能性:
您是在尝试在applet或应用程序中执行此操作吗?如果它是一个应用程序(或签名的小程序),您可以在应用程序中实例化IE或Firefox。 Webrenderer充当Swing包装器。
答案 2 :(得分:1)
Swing有一个名为BasicHTML的内置组件。我从来没有使用它,但我认为它应该足够基本的东西。
答案 3 :(得分:1)
许多Swing控件(如JLabel)都可以呈现基本的HTML内容。 JEditorPane可用于显示HTML页面。但是,这些控制仅限于HTML 3.2支持。
为了获得更丰富的体验,我会使用JDesktop Integration Components。
JDIC为Java应用程序提供 获得功能和 当地人提供的设施 桌面。它由一个集合组成 Java包和工具。 JDIC 支持各种功能,如 嵌入原生浏览器, 启动桌面应用程序, 在桌面上创建托盘图标, 注册文件类型关联, 创建JNLP安装程序包等
答案 4 :(得分:1)
这在历史上一直是Java,IMO的一个主要弱点。有许多方法可以显示有限的标记,但很少有提供全功能HTML功能的方法。前面提到的JDIC组件是一个选项,但它被认为是“重量级”组件,因此并不总是与Swing应用程序很好地集成。
然而,我希望新的基于Webkit的JWebPane项目能够提供更高级的功能,而不会出现我们过去必须处理的所有问题。当然,也有几种商业选择(IceBrowser作为一个例子非常好。)
答案 5 :(得分:1)
我刚刚使用 SwingBox 来显示一个非常简单的HTML页面,效果很好。
该项目包含一个简单的演示应用程序,可将其BrowserPane
组件与JEditorPane
进行比较,在复杂页面上显示更好的结果(但仍无法与现代Web浏览器相媲美)。
我唯一的问题是来自包装JScrollPane
的不需要的滚动条。演示应用程序似乎有同样的问题。我不能告诉问题的来源。我使用的是1.0版本。
这是一个代码片段,用于说明使用该组件的简单程度:
BrowserPane browserPane = new BrowserPane();
JScrollPane scrollPane = new JScrollPane(browserPane);
someContainer.add(scrollPane);
browserPane.setText("<html><b>Some HTML here</b></html>");
// or...
browserPane.setPage(new URL("http://en.wikipedia.org"));
答案 6 :(得分:0)