UNIDAD 2: CONTROL DE PROGRAMA

JAVA TEMA 16: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

Para procesar este componentes solo usar getselecteditem() comor regresa objeto, se puede recibir en objeto de cualquier clase, ya como objeto con los metodos apropiado se puede mandar a variables u otros tipos (recordar operador cast y conversiones)

TAREAS JAVA

1.- REEDITAR ALGUNOS DE LOS PROBLEMAS YA RESUELTOS, AGREGANDO ESTE COMPONENTE EN LOS CASOS DE CAPTURAS QUE LO PUEDEN ADMITIR ( CAPTURAS DONDE YA SE TIENEN LAS ENTRADAS SELECCIONADAS O CONOCIDAS DE ANJAVA TEMA NO).

 


 


Driven by DokuWiki

Politica de Privacidad