Visualizzazione dei risultati da 1 a 8 su 8

Discussione: (java) link

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883

    (java) link

    Volevo aggiungere un link ad una jlabel, poi volevo che cliccandoci sopra si aprisse il browser predefinito di sistema ed aprisse la pagina linkata

    Come posso fare?
    la label visualizza un link ma quando ci premo non si apre il browser

    <code>
    String labelText =
    "<html>Copyright: GNU License"
    + "

    "
    + "Homepage: <a href=\"java.sun.com\"> click </a></html>";
    JLabel textLabel = new JLabel(labelText);
    </code>

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    nessuna idea?

  3. #3
    facendo una ricerca all'interno del forum
    23-08-2005: Udinese in cémpions lìg
    Questa estate l'ho passata a Tallin

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    codice:
    JLabel label = new JLabel("Clicca qui");
    label.addMouseListener( new MouseAdapter() {
       public void mouseClicked(MouseEvent me) {
          apriBrowser();
       }
    });
    
    ...
    
    private void apriBrowser() {
       String [] comando = {"START", "http://java.sun.com"};
       try {
          Runtime.getRuntime().exec(comando);
       } catch (Exception e) { e.printStackTrace(); }
    }
    Così dovrebbe andare... (non l'ho provato).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    così funziona però quando passo il cursore sul link non diventa una manina
    Io penso che il codice che hai scritto sia un modo per cavarsela, ma forse la sun ha progettato un metodo preciso per inserire un link in componenti swing in modo tale che erediti tutte le caratteristiche di un link, tra le quali quella del cambio di cursore del mouse

    forse mi sbaglio

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Penso anch'io... ma sicuramente non su una JLabel... a questo punto prova a dare un'occhiata al JEditorPane.

    In alternativa, puoi "cavartela" aggiungendo qualcosa come questo:
    codice:
    JLabel label = new JLabel("Clicca qui");
    label.addMouseListener( new MouseAdapter() {
       public void mouseClicked(MouseEvent me) {
          apriBrowser();
       }
       public void mouseExited(MouseEvent me) {
          ricambiaCursore();
       }
       public void mouseEntered(MouseEvent me) {
          cambiaCursore();
       }
    });
    
    ...
    
    private void cambiaCursore() {
       setCursor( new Cursor(Cursor.HAND_CURSOR) );
    }
    
    private void ricambiaCursore() {
       setCursor( new Cursor(Cursor.DEFAULT_CURSOR) );
    }
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    ottimo suggerimento :-D
    il metodo setCursor a che oggetto appartiene?

  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Il metodo setCursor() appartiene a Component (quindi anche a JFrame, Frame, ecc.)


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.