Autor Tema: Cargar JOptionPane con JComboBox java a partir de base de datos  (Leído 6717 veces)

cardiobeta

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 39
    • Ver Perfil
Hola. Trabajando con jOptionPane y observando que se le puede adicionar un jComboBox pense en la posibilidad de añadir los datos de una columna de una tabla en ese JComboBox. Mi pregunta es: ¿es eso posible? y de ser asi ¿Como se haria?. Gracias.
« Última modificación: 05 de Septiembre 2014, 10:17 por Alex Rodríguez »

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 393
    • Ver Perfil
Re:Cargar JOptionPane con JComboBox a partir de base de datos.
« Respuesta #1 en: 14 de Marzo 2013, 15:02 »
Si lo veo posible, tienes que crear un array de objetos y en esos objetos introducir los textos rescatados de la base de datos, como está en este ejemplo pero rescatando los datos de la base de datos

Código: [Seleccionar]
//(1) PAQUETE

import java.awt.*;

import javax.swing.*;

//(2) FORMULARIO

public class Programa1 extends JFrame {

    //(3) CONTROLES DEL FORMULARIO       

    JPanel jpanel = (JPanel) this.getContentPane();

    JLabel jlabel = new JLabel();

    JTextField jtextfield = new JTextField();   

    //(4) CONSTRUCTOR DEL FORMULARIO       

    public Programa1() {

        //(5) PROPIEDADES DEL CONTENEDOR

        jpanel.setLayout(null);

        jpanel.setBackground(Color.lightGray);

        //(6) PROPIEDADES DE LOS CONTROLES         

        jlabel.setBounds(new Rectangle(5, 15, 220, 21));

        jlabel.setText("Introduzca su peso en kgs por favor");

        jtextfield.setBounds(new Rectangle(225, 15, 80, 21));

        //(7) ADICION DE LOS CONTROLES AL CONTENEDOR       

        jpanel.add(jlabel, null);

        jpanel.add(jtextfield, null);

        //(8) PROPIEDADES DEL FORMULARIO         

        setSize(300,150);

        setTitle("Form1");

        setVisible(true);

        Object[] possibilities = {"mermelada", "chocolate", "mantequilla"};
        String s = (String)JOptionPane.showInputDialog(
                this,
                "Completa la frase:\n"
                + "\"Pan con...\"",
                "Preguntando por pan",
                JOptionPane.PLAIN_MESSAGE,
                null,
                possibilities,
                "mermelada");

        //If a string was returned, say so.
        if ((s != null) && (s.length() > 0)) {
            jlabel.setText("Pan con... " + s + "!");
            return;
        }

        //If you're here, the return value was null/empty.
        jlabel.setText("Por favor completa la frase");

    }

    //(9) METODOS DEL FORMULARIO     

    public static void main(String arg[]) {

        new Programa1();

    }


cardiobeta

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 39
    • Ver Perfil
Re:Cargar JOptionPane con JComboBox a partir de base de datos.
« Respuesta #2 en: 14 de Marzo 2013, 19:13 »
El asunto es que tengo una tabla llamada personas con 2 campos: id y nombre. Lo que quiero es que todos loe elementos de la columna nombre sean los object que se adicionen al JOptionPaned. He intentado hacerlo creando un arraylist pero al adicionarlo me aparece un jComboBox con un solo item donde se inscribe: pedro, maria, juana, carmen; seguidos y separados por comas y yo quiero que cada nombre sea un item. No se si me explique bien. Gracias por el interes

javi in the sky

  • Avanzado
  • ****
  • Mensajes: 393
    • Ver Perfil
Re:Cargar JOptionPane con JComboBox a partir de base de datos.
« Respuesta #3 en: 14 de Marzo 2013, 23:14 »
Pero fíjate en el ejemplo, no tienes que crear un ArrayList sino un arreglo o array de elementos Object:

Object[] possibilities = {"mermelada", "chocolate", "mantequilla"};
        String s = (String)JOptionPane.showInputDialog(
                this,
                "Completa la frase:\n"
                + "\"Pan con...\"",
                "Preguntando por pan",
                JOptionPane.PLAIN_MESSAGE,
                null,
                possibilities,
                "mermelada");

 

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".