2008-08-25 12 views
3

Welche Bibliotheken/Methoden, die Sie kennen, können einige grundlegende HTML-Darstellung in Swing tun? Kannst du deine Erfahrung kommentieren?Vorschau von HTML in Java

Antwort

1

Viele der Swing-Steuerelemente (wie JLabel) können grundlegenden HTML-Inhalt wiedergeben. JEditorPane kann zum Anzeigen von HTML-Seiten verwendet werden. Diese Steuerelemente sind jedoch auf HTML 3.2 Unterstützung beschränkt.

Für eine reichere Erfahrung würde ich die JDesktop Integration Components verwenden.

JDIC bietet Java-Anwendungen mit Zugriff auf Funktionalitäten und durch die native Desktop Einrichtungen zur Verfügung gestellt. Es besteht aus einer Sammlung von Java-Paketen und -Tools. JDIC unterstützt eine Vielzahl von Funktionen wie die native Browser einbetten, die Desktop-Anwendungen starten, Erstellen Tray-Icons auf dem Desktop, Dateitypzuordnungen Registrierung JNLP Installationspakete erstellen, usw.

1

Swing hat eine integrierte Komponente namens . Ich habe es nie benutzt, aber ich denke, es sollte für das grundlegende Zeug ausreichen.

1

Dies war in der Vergangenheit ein wichtiger Schwachpunkt für Java, IMO. Es gibt zahlreiche Möglichkeiten, begrenzte Markups anzuzeigen, aber nur sehr wenige, die HTML-Funktionen mit vollem Funktionsumfang bieten. Die zuvor erwähnte JDIC-Komponente ist eine Option, jedoch wird sie als eine "Schwergewicht" -Komponente angesehen und integriert sich daher nicht immer gut in Swing-Anwendungen.

Ich bin jedoch zuversichtlich, dass das neue Webkit basierte JWebPane Projekt erweiterte Fähigkeiten ohne all die Probleme, mit denen wir in der Vergangenheit zu tun hatten, bieten wird. Und natürlich gibt es auch einige kommerzielle Optionen (IceBrowser ist ziemlich gut als Beispiel).

0

Kam über Lobo Java-Webbrowser neulich.

Lobo wird aktiv mit dem Ziel entwickelt, HTML 4, Javascript und CSS2 vollständig zu unterstützen.

Keine Erfahrung damit, aber dachte, es könnte die Rechnung für Sie passen.

2

Eine gute reine Java-Lösung ist JWebEngine. Es macht HTML 4 sehr gut.

+0

Es ist kommerzielle Lizenz ist über 2000USD –

1

Ich habe gerade SwingBox verwendet, um eine recht einfache HTML-Seite anzuzeigen, mit guten Ergebnissen.

Das Projekt enthält eine einfache Demo-Anwendung, die ihre BrowserPane Komponente mit JEditorPane vergleicht, was ein viel besseres Ergebnis auf komplexen Seiten zeigt (aber immer noch nicht vergleichbar mit einem modernen Webbrowser).

Das einzige Problem, das ich hatte, ist über unerwünschte Scrollbars aus der Verpackung JScrollPane. Die Demo-Anwendung scheint das gleiche Problem zu haben. Ich kann nicht sagen, woher das Problem stammt. Ich benutze Version 1.0.

Hier ist ein Codefragment zu zeigen, wie einfach ist es, die Komponente zu verwenden:

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"));