4

我有一个显示 HTML 文件的编辑器窗格。当我要求它执行一次时,它会很好地显示 HTML 文件。然后,我对我的 HTML 文件进行更改并使用该setPage方法打印更新的 HTML 文件,但即使 HTML 文件已更改,它也不会这样做。

这是编辑器窗格的问题还是我的代码有问题?

4

2 回答 2

7

查看JavaDoc forsetPage,我看到以下内容:

如果所需的 URL 是当前正在显示的 URL,则不会重新加载文档。要强制重新加载文档,必须清除文档的流描述属性。以下代码显示了如何做到这一点:

Document doc = jEditorPane.getDocument();
doc.putProperty(Document.StreamDescriptionProperty, null);
于 2009-03-05T17:40:35.190 回答
0

我已经做了一些测试,我已经重现了这种行为。当我调用 setPage 并将先前在同一方法中传递的相同 URL 作为参数传递时,JEditorPane 似乎忽略了该调用。

一个简单的解决方法:测试新的 Url 是否与前一个相同。如果是,请以不同的方式格式化 URL。例如,在末尾添加 %20。新的 Url 实际上是指同一个页面,但 JEditorPane 会将其视为新的,并且会正确地重新加载它。

于 2009-03-05T11:20:54.367 回答