Autor Tema: Java cómo puedo usar JComboBox para que me mande (direccionar) a una página web  (Leído 2826 veces)

LinkKenedy

  • Visitante
Hola, tengo una duda, ¿cómo puedo usar un JComboBox para que me mande a una página web?

Por ejemplo si selecciono la pagina1 en el arreglo (array) del combobox, como puedo hacer que me mande a dicha pagina con un jbutton? Y si selecciono página 2, que me mande a otra?

Ojalá que se entienda lo que quiero decir!

Saludos!
« Última modificación: 14 de Diciembre 2016, 20:49 por Ogramar »

ESOJ

  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 143
    • Ver Perfil
Re:JComboBox y PaginaWeb
« Respuesta #1 en: 28 de Noviembre 2016, 12:09 »
Buenos días.

Una forma podría ser usando este método:
Código: [Seleccionar]
public void goToURL(String URL){
        if (java.awt.Desktop.isDesktopSupported()) {
            java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
            if (desktop.isSupported(java.awt.Desktop.Action.BROWSE)) {
                try {
                    java.net.URI uri = new java.net.URI(URL);
                    desktop.browse(uri);
                } catch (URISyntaxException | IOException ex) {
                    // Logger.getLogger(Acerca.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }
    }

ESOJ

  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 143
    • Ver Perfil
Re:JComboBox y PaginaWeb
« Respuesta #2 en: 28 de Noviembre 2016, 12:16 »
Lo publiqué antes de terminar.

Para que el método anterior funcionara tendrías que importar:

Código: [Seleccionar]
import java.io.IOException;
import java.net.*;

Luego simplemente sería invocar el método cuando saltara el evento del botón correspondiente .Por ejemplo:
Código: [Seleccionar]
if (e.getActionCommand().equals("Pagina 1")){goToURL("https://www.bbva.es/particulares/index.jsp");}
Un saludo.

LinkKenedy

  • Visitante
Re:JComboBox y PaginaWeb
« Respuesta #3 en: 28 de Noviembre 2016, 17:24 »
Ya lo estuve probando bro, pero ahora me manda un mensaje en consola cuando pulso el boton y no abre la pagina web en cuestion.

Código: [Seleccionar]
java.io.IOException: Failed to mail or browse . Error code: -10814

ESOJ

  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 143
    • Ver Perfil
Re:JComboBox y PaginaWeb
« Respuesta #4 en: 28 de Noviembre 2016, 18:24 »
Ese error puede ser porque no encuentre la clase.

Prueba el siguiente código e intenta guiarte por el:
Código: [Seleccionar]
import java.net.*;
import java.io.IOException;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class PanelPrincipal extends JFrame{
    JPanel principal=new JPanel();
    JPanel panel2=new JPanel();
    JPanel arriba=new JPanel();
    JButton rojo=new JButton("BBVA");
    JButton azul=new JButton("BSCH");

    public PanelPrincipal(){

        super("Panel principal");
        setSize(400,300);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        panel2.add(rojo);
        panel2.add(azul);

        BoxLayout horizontal=new BoxLayout(principal,BoxLayout.Y_AXIS);
        principal.setLayout(horizontal);
        principal.add(arriba);
        principal.add(panel2);

        add(principal);
        setVisible(true);

        rojo.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {                   
                    goToURL("https://www.bbva.es/particulares/index.jsp");
                }
            } );

        azul.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                    goToURL("https://www.bancosantander.es/es/particulares");
                }
            } );
    }

    public void goToURL(String URL){
        if (java.awt.Desktop.isDesktopSupported()) {
            java.awt.Desktop desktop = java.awt.Desktop.getDesktop();
            if (desktop.isSupported(java.awt.Desktop.Action.BROWSE)) {
                try {
                    java.net.URI uri = new java.net.URI(URL);
                    desktop.browse(uri);
                } catch (URISyntaxException | IOException ex) {
                    // Logger.getLogger(Acerca.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }
    }

    public static void main(String[]args){
        PanelPrincipal p=new PanelPrincipal();
    }
}

Espero que te sirva.

LinkKenedy

  • Visitante
Re:Java cómo puedo usar un JComboBox para que me mande a una página web
« Respuesta #5 en: 09 de Diciembre 2016, 17:20 »
Muchas gracias amigo, ya con esto problema resuelto!

Saludos!

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".