martes, 15 de abril de 2008

COMO SE MANEJA UN JCOMBOBOX EN JAVA

COMPONENTE JCOMBOBOX


Utilizar la clase JComboBox

Para utilizar la clase JComboBox en Java, hay que seguir una serie de pasos en los cuales se definirán variables y métodos de esta clase como se muestra en la siguiente figura:






Aquí el JComboBox, está mostrando una lista en la que se dan varias opciones predeterminadas del programa, y que para cada opción hay una acción al escogerla.

Para utilizar la clase JComboBox en un programa de Java, es necesario primero adicionar lo siguiente:

String[] flechaStrings = {"imagen 1", "imagen 2", "imagen 3", "imagen 4", "imagen 5"};


Aquí primero se definen los valores que se van a tomar, en este caso los carros, para aceptar la variable de tipo String, y que va a ser util al momento de que se tomen estos valores en lista adicionandola a la clase JComboBox, ya veremos como.

En las siguientes instrucciones se darán pasos para el adicionamiento de variables a la clase

JComboBox.

public clase() {

JComboBox lista = new JComboBox(flechaStrings); lista.setSelectedIndex(0);
Aquí estamos primero tomando la clase para que dentro de esa clase, defina una variable lista y la tome como como new JComboBox, y que además adquiera los valores de (flechaStrings); que ya habíamos definido anteriormente. [1]

JAVA JCOMBOBOX


SOLO EN SWING.


Existen muchas ocasiones en donde el usuario del programa tiene que proporcionar datos que provienen de un conjunto finito y muy pequeño de posibles respuestas, esto significa que cada vez que se ejecute el programa, el usuario estará proporcionando las mismas respuestas.


Ejemplo de esta clase de datos, son por ejemplos Municipio en BC, las posibles respuestas solo son (Tecate, Tijuana, Mexicali, Ensenada, Rosarito), otro ejemplo es Sexo (Hombre, Mujer), etc.


Para situaciones como esta, existen componentes que permiten programar por adelantado las posibles respuestas, y el usuario solo debe seleccionar la respuesta apropiada , en lugar de tener que escribirla.


Este componente ComboBox nos permite definir en primera instancia un conjunto de datos o valores respuestas asociados a una caja de edición cualesquiera, así ahora el usuario tendrá la oportunidad de seleccionar un dato del conjunto de datos o respuestas ya predefinido.


Este componente ComboBox tiene dos partes, una parte de encabezado, para poner el nombre del grupo de respuestas( por ejemplo municipios, sexo, etc.).


La segunda parte es la lista de opciones o respuestas que se debe cargar al tiempo de diseño de la ventana.


Al momento de ejecución del programa, toda la lista de respuestas, estarán a la vista del usuario, para que este ultimo la seleccione.


Recordar que el usuario al momento de ejecución del programa, solo vera el encabezado, para seleccionar su respuesta deberá apretar la flechita que esta a un lado del encabezado.


Ejemplo:


import java.lang.*; import java.awt.*; import java.awt.event.*; import javax.swing.*;


public class prog16 {


//declaracion, creacion e inicializacion de componentes, objetos y variables


static JFrame ventana= new JFrame();


static JPanel p1= new JPanel(); static JPanel p2= new JPanel();
static String[]


lista={"municipios","tecate","tijuana","ensenada","tecate"};


static JComboBox municipios = new JComboBox(lista );


static JTextField jt1=new JTextField(15); static JButton jb1= new JButton("OK");


// parte principal de programa


public static void main(String[] args)


{ // area de definicion de propiedades de el objeto


ventana.setTitle("mi programa");


ventana.setDefaultCloseOperation(ventana.EXIT_ON_CLOSE);
ventana.getContentPane().setLayout(new GridLayout(2,0));


//cargando panel1 con combobox y definiendo titulo
p1.setLayout(new GridLayout(1,0));
//observar que index cero es el titulo (aunque es un elemento mas)
municipios.setSelectedIndex(0); p1.add(municipios);
//cargando segundo panel con jbutton y jtextfield
p2.add(jb1); p2.add(jt1);
ventana.getContentPane().add(p1); ventana.getContentPane().add(p2);
ventana.pack(); ventana.setVisible(true);
jb1.addMouseListener( new MouseAdapter()
{ public void mousePressed(MouseEvent e){
// la propiedad getselecteditem() regresa un objeto
jt1.setText(String.valueOf( municipios.getSelectedItem() ) );
}} );
}; // termina main
} // termina clase


www.programacionfacil.com/java:jcombobox


En nuestro Segundo Ejemplo hacemos uso del componente de interfaz gráfica JComboBox, o muchas veces llamado lista desplegable, simplemente mostramos una imagen en un label cada elemento seleccionado en nuestro selector desplegable.


para ello tenemos una serie de imagenes dentro de una carpeta, estas imagenes las cargaremos en un arreglo


private String dir = “images/”; //directorio donde se encuentran las imagenes


private String nombres[] = {


dir+”numUno.gif”,dir+”numDos.gif”,dir+”numTres.gif”,dir+”numCuatro.gif”,dir+”numCinco.gif” }; //arreglo de imagenes


y con ellas llenamos un arreglo de iconos de la siguiente manera


private Icon iconos[] = { new ImageIcon(nombres[0]),


new ImageIcon(nombres[1]),


new ImageIcon(nombres[2]),


new ImageIcon(nombres[3]),


new ImageIcon(nombres[4]) };


Luego en el manejo del evento de nuestra lista desplegable preguntamos si es seleccionada y seteamos en nuestro label el elemento del arreglo iconos en donde guardamos las imagenes(en realidad guardamos los nombres a donde apuntan las imagenes) quedaria de la siguiente manera


if (e.getStateChange()== ItemEvent.SELECTED)


lbletiqueta.setIcon(iconos[cboxImagenes.getSelectedIndex()]);


A continuacion mostramos una imagen de la aplicacion terminada y su codigo fuente listo para compilarse.


BIBLIOGRAFIA CONSULTADA

[1]http://www.gfc.edu.co/estudiantes/anuario/2003/sistemas/orlando/SGML/Jcombobox/

c22.html

[2]http://exequielc.wordpress.com/2008/02/15/manejo-de-eventos-jcheckbox-y-jcombobox-java/

No hay comentarios: