Link auf der Swing-Oberfläche

Layna

Erfahrenes Mitglied
Hallo.
Also, ich ahbe bisher ALLES auf emien Swing-oberflächen bekommen... leider stehe ich jetzt total auf dem Schlauch.
Es soll einfach nur ein LINK auf die Oberfläche.
Der User klickt auf einen Button, ein neues Fenster geht auf, und in diesem Fenster soll ein klickbarer Link sein. Irgendwie fällt mir dazu gerade gar nichts ein.... Hilfe?

Larayna
 
Zuletzt bearbeitet:
Moin,
ad hoc Idee: JLabel und dort in setText den entsprechenden HTML-Code schreiben ("<HTML><...>")
 
Hab das hier in google gefunden: viel. hilfts bin leider in Swing nicht sehr bewandert!
Code:
try {
        String url = "http://java.sun.com";
        JEditorPane editorPane = new JEditorPane(url);
        editorPane.setEditable(false);
        editorPane.addHyperlinkListener(new MyHyperlinkListener());
    } catch (IOException e) {
    }
    
    class MyHyperlinkListener implements HyperlinkListener {
        public void hyperlinkUpdate(HyperlinkEvent evt) {
            if (evt.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
                JEditorPane pane = (JEditorPane)evt.getSource();
                try {
                    // Show the new page in the editor pane.
                    pane.setPage(evt.getURL());
                } catch (IOException e) {
                }
            }
        }
    }
 
Das mit dem html-code hatte ich ausprobiert, ging leider nicht.
Aber der HyperlinkListener sieht vielversprechend aus, vielen Dank :).
Ich poste die Lösung wenn ich sie habe :).
 
Hallo :).
Erst einmal danke für den Hyperlink-Listener, das war echt das Stichwort das mir fehlte.
Leider bin ich danach auf die Frage des aufrufens des Brwosers von Java aus gestossen.
Eine einfache Lösung habe ich bisher nur ab Java6 gefunden:

Seit Java 6 ist das über die Klasse java.awt.Desktop ganz einfach. Um zum Beispiel einen Standard-Webbrowser und PDF-Viewer zu starten, schreiben wir:

Listing 8.17 com/javatutor/insel/awt/OpenBrowser.java, main()

try
{
Desktop.getDesktop().browse( new URI("http://java-tutor.com/") );
Desktop.getDesktop().open( new File("S:/Public.Comp.Lang.Java/3d/Java3D.pdf") );
}
catch ( Exception /* IOException, URISyntaxException */ e )
{
e.printStackTrace();
}
http://www.galileocomputing.de/openbook/javainsel6/javainsel_08_007.htm#Xxx1000727

So wirklich zufrieden bin ich leider noch nicht (muss doch auch vor Java6 gehen...), daher schliesse ich das Thema erstmal nicht als "gelöst" ab.
Hoffe ich kann bald ein Update geben.
Wenn noch jemand einen anderen Ansatz für "Browser aufrufen" hat, gerne schreiben :).

Larayna.
 
Moin!
Zumindest mal unter Windows kannst du den Standard Browser so aufrufen
Code:
try{
        Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + "http://www.tutorials.de");
        }
        catch(Exception e){}

*grüssle*
MeinerEiner
 
Zurück