2009-03-05 10 views
4

Ich habe einen Editor-Bereich, der eine HTML-Datei anzeigt. Wenn ich es einmal vorschlage, zeigt es die HTML-Datei an. Ich mache dann Änderungen an meiner HTML-Datei und verwenden Sie die setPage Methode, so dass es die aktualisierte HTML-Datei druckt, aber es tut dies nicht, obwohl die HTML-Datei geändert wird.Verwenden von JEditorPane und seine setPage-Methode

Ist dies ein Problem mit dem Editor-Fenster oder stimmt etwas mit meinem Code nicht?

Antwort

0

Ich habe einige Tests gemacht und ich habe dieses Verhalten reproduziert. Wenn ich setPage aufrufen und als Argument dieselbe URL übergeben habe, die zuvor in derselben Methode übergeben wurde, scheint der JEditorPane den Aufruf zu ignorieren.

Eine einfache Umgehung: Testen Sie, ob die neue URL die gleiche wie die vorherige ist. Wenn ja, formatieren Sie die URL etwas anders. Fügen Sie zum Beispiel ein% 20 am Ende hinzu. Die neue Url bezieht sich eigentlich auf die gleiche Seite, aber der JEditorPane wird sie als eine neue betrachten und sie neu laden.

7

am JavaDoc for setPage Sehen, ich sehe folgende:

Wenn die gewünschte URL der, der gerade angezeigt wird, wird das Dokument nicht neu geladen werden. Um das erneute Laden eines Dokuments zu erzwingen, müssen Sie die Stream-Beschreibung Eigenschaft des Dokuments löschen. Der folgende Code zeigt, wie dies getan werden kann:

Document doc = jEditorPane.getDocument(); 
doc.putProperty(Document.StreamDescriptionProperty, null); 
+0

Vielen Dank, habe ich nach einem Weg suchen, um 'JEditorPane' dies nun für eine Weile zu tun. Ich schätze, ich sollte die Dokumente mehr lesen! –

Verwandte Themen