Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17

Discussione: [Java]JOptionPane

  1. #1
    Utente di HTML.it L'avatar di nicola
    Registrato dal
    May 2007
    Messaggi
    86

    [Java]JOptionPane

    salve qualcuno sa se posso mettere un collegamento del tipo ipertestuale ad una parola che scrivo nel JOptionPane.
    es.
    ho questo JOP...
    codice:
    JOptionPane.showMessageDialog(p, "CREA CONTO: consente la creazione di un conto");
    è possibile mettere un collegamento alla scritta CREA CONTO di modo che se la premo apra un secondo JOP che specifichi meglio le funzioni di CREA CONTO?

  2. #2
    Utente di HTML.it L'avatar di nicola
    Registrato dal
    May 2007
    Messaggi
    86
    lel mi ha detto ke si possono usare i tag html
    e quindi ho fatto:
    codice:
    JOptionPane.showMessageDialog(p, "<html>Crea Conto: consente la creazione di un conto</html>");
    ora la scritta crea conto mi esce correttamete sottolineata, ma ora come la associo ad un evento?

  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [Java]JOptionPane

    Originariamente inviato da nicola
    salve qualcuno sa se posso mettere un collegamento del tipo ipertestuale ad una parola che scrivo nel JOptionPane.
    es.
    ho questo JOP...
    codice:
    JOptionPane.showMessageDialog(p, "CREA CONTO: consente la creazione di un conto");
    è possibile mettere un collegamento alla scritta CREA CONTO di modo che se la premo apra un secondo JOP che specifichi meglio le funzioni di CREA CONTO?
    Esiste un listener HyperlinkListener che se non sbaglio è utilizzabile solo, purtroppo, con JEditorPane. Però la mia idea è proprio quella di mettere un JEditorPane come 'message' del JOptionPane.

    Ho provato questo:

    codice:
    import java.awt.*;
    import javax.swing.*;
    import javax.swing.event.*;
    
    public class Prova
    {
        public static void main (String[] args)
        {
            JEditorPane editorPane = new JEditorPane ("text/html", "Clicca su questo link1 o su questo link2");
            editorPane.setEditable (false);
    
            editorPane.addHyperlinkListener (new HyperlinkListener ()
            {
                public void hyperlinkUpdate (HyperlinkEvent evt)
                {
                    if (evt.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
                    {
                        JOptionPane.showMessageDialog ((Component) evt.getSource (), "Hai cliccato il link con href = " + evt.getDescription ());
                    }
                }
            });
    
            JOptionPane.showMessageDialog (null, editorPane);
        }
    }
    e sembra funzionare bene.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  4. #4
    Utente di HTML.it L'avatar di nicola
    Registrato dal
    May 2007
    Messaggi
    86
    grazie and sei un grande!

  5. #5
    Utente di HTML.it L'avatar di nicola
    Registrato dal
    May 2007
    Messaggi
    86
    scusami and... ho fatto una pagina html per i riferimenti...
    codice:
    <body>
    <h1>Titolo</h1>
    
    
    qua ci scrivi la prima descizione 
    
      
      
    
    </p>
    <h1><a name="CreaConto"></a>Titolo2</h1>
    
    
    qua ci scrivo la seconda descizione </p>
    </body>
    come faccio a fare aprire il collegamento a CreaConto

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da nicola
    scusami and... ho fatto una pagina html per i riferimenti...
    codice:
    <body>
    <h1>Titolo</h1>
    
    
    qua ci scrivi la prima descizione 
    
      
      
    
    </p>
    <h1><a name="CreaConto"></a>Titolo2</h1>
    
    
    qua ci scrivo la seconda descizione </p>
    </body>
    come faccio a fare aprire il collegamento a CreaConto
    Scusa ma non ho ben capito ... vuoi che cliccando su un link che ha href="#CreaConto" il JEditorPane si posizioni nel punto dove c'è l'anchor con quel name??
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it L'avatar di nicola
    Registrato dal
    May 2007
    Messaggi
    86
    cliccando su crea conto si apre la pagina html posizionata all'ancor CreaConto

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da nicola
    cliccando su crea conto si apre la pagina html posizionata all'ancor CreaConto
    Aspetta .. ho visto sopra il codice dove avevi messo Crea Conto.
    Quindi questo è quello che metti nel JEditorPane visualizzato nel JOptionPane, giusto? Ma poi per aprire quella pagina help.html#CreaConto dove vuoi farlo? In un altro JEditorPane?? In un browser esterno?
    Sorry ma non ho ben capito.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it L'avatar di nicola
    Registrato dal
    May 2007
    Messaggi
    86
    il JEditorPane funziona in un Applet quindi cliccando su crea conto a su altri si apre la pagina help.html al riferimento opportuno.
    allego una immagine per far capire meglio
    Immagini allegate Immagini allegate

  10. #10
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da nicola
    il JEditorPane funziona in un Applet quindi cliccando su crea conto a su altri si apre la pagina help.html al riferimento opportuno.
    Ah ho capito. Allora non è difficile, basta fare:

    codice:
    getAppletContext().showDocument (new URL ("blabla#qualcosa"));
    Nota, il metodo getAppletContext() è della classe Applet.

    Ho fatto una prova e la pagina web ovviamente viene cambiata ma ... con un "piccolo" fastidio: la finestra del JOptionPane rimane aperta (la applet è ancora in esecuzione). Se ti va bene, ok. Se non ti va bene, bisognerebbe trovare il modo di chiudere il JOptionPane.

    Quando sei nel metodo hyperlinkUpdate(), puoi solo ottenere il componente sorgente (getSource()) che in questo caso è il JEditorPane. Ma non hai alcun "appiglio" diretto al JOptionPane.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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.