Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ObjetodeControlJComboBox
Un objeto de control JComboBox permite dibujar en el formulario una lista desplegadle, la
cual contiene opciones (tems). ComboBox significa cuadro combinado porque combina
un cuadro de texto con una caja de lista, es como si fuera un JtextField mezclado o
combinado con un Jlist. Tiene la particularidad de que se debe seleccionar un botn de
comando de despliegue y luego seleccionar la opcin o tem.
Una vez dado clic en el botn de despliegue se muestra las opciones o tems del objeto
Propiedades ms usadas:
Mtodos ms usados:
getSelectedIndex(): Contiene el valor del ndice activo o ndice actual del tem
seleccionado de la caja de lista. El ndice es un valor numrico correlativo no visible
que va desde 0.
Evento ms usado:
Aplicacin
Construir una aplicacin que permita el ingreso del nombre del alumno y poder
seleccionar de una lista desplegadle una categora de los cursos. Al momento de
seleccionar la categora se debe mostrar los cursos con sus respectivos costos en las
cajas de listas (los JList que se muestran al lado izquierdo del diseo del formulario). Una
vez visualizado los cursos el usuario puede seleccionar y agregar en las cajas de listas
(los Jlist que se muestran al lado derecho del diseo del formulario) los cursos solicitados
por el alumno. El pago por el servicio de enseanza se establece de la siguiente manera:
2
Existe un pago por matrcula del 80% del costo total (suma de los costos de los
cursos escogidos) siempre y cuando quiera el alumno llevar un solo curso, 60% del
costo total si lleva dos cursos y 50% del costo total si lleva 3 o ms cursos.
Solucin:
Colocars un objeto Jlabel con la expresin Cursos Ofertados y otro objeto Jlabel
ubicado al lado derecho de ste ltimo con la expresin Costo. Aades dos listas
debajo de las expresiones de estos dos ltimos Jlabel, haciendo que los tems
sean eliminados o removidos a travs del uso de la propiedad model. Luego
agregas dos botones de comando que indiquen Agregar y Eliminar. Posteriormente,
aades dos objetos Jlabel que expresen: Cursos Escogidos y Costo y debajo de
estos objetos Jlabel agregas dos objetos JList siendo tambin eliminados o
removidos los tem a travs del uso de la propiedad model.
matrcula, el costo total y el pago mensual. Los nombres de los objetos de control
dibujados en el formulario queda de la siguiente manera:
Ahora bien, si observamos en el diseo del formulario, los cuatros objetos JList no
tienen tems. Los objetos JList referidos a Cursos Ofertados y Costo (objetos
ubicados al lado izquierdo del diseo del formulario) se llenarn de tems de
acuerdo a lo seleccionado en la lista desplegadle referido a la Categora de Cursos.
Los objetos Jlist referidos a Cursos Escogidos y Costos se llenarn en la medida que
se seleccione un curso ofertado y se agregue con el botn de comando
Agregar. Los 4 objetos JList deben tener un modelo (model) cada uno, para ello
debes definir 4 variables: modelo1, modelo2, modelo3 y modelo4 del tipo
DefaultListModel(). Para poder hacer uso de la clase DefaultListModel se debe
hacer uso del paquete javax.swing.*; y debe ser escrito despus del paquete
Aplicaciones.
Se declara una variable de memoria llamada indice para que almacene el ndice
actual del tem seleccionado del objeto JComboBox llamado cboCategorias.
Sabiendo el valor del ndice actual o activo se hace uso de una sentencia selectiva
switch que evala cul de los tems ha sido seleccionado. Se sabe que el primer
tem de la lista desplegadle es <Seleccionar> y le corresponde el ndice 0, Diseo
Grfico el ndice 1, Diseo Web el ndice 2 y as sucesivamente. Cuando sea
<Seleccionar> solo se procede a limpiar los objetos lstCurOfer y lstCostos a
travs del mtodo clear() aplicados a las variables modelo1 y modelo2. Si el tem
seleccionado es Diseo Grfico se procede a limpiar los objetos lstCurOfer y
lstCostos y se agrega los nombres de los cursos Corel Draw y Photo Show con
sus respectivos costos a travs del uso del mtodo addElement aplicados a las
variables modelo1 y modelo2 que tienen relacin directa con los objetos lstCurOfer
y lstCostos. De igual forma se trabaja para los dems tems del objeto JComboBox
llamado cboCategorias.
10
10
Se declara una variable entera llamada ndice, esta variable recibe el valor del
ndice del tem seleccionado gracias al mtodo getSelectedIndex().
Lo que se
11
11
Aqu declaramos dos variables de tipo String llamados curso y costo y las
variables enteras total y i. En la variable curso se almacena el curso seleccionado
en la lista lstCurOfer, el mtodo getSelectionValue() trae consigo el tem
seleccionado pero lo trae como objeto y al poner (String) hacemos que se
convierta en cadena de caracteres para que pueda ser asignada a la variable
curso. De igual manera se hace con la variable costo. Para agregar un tem a una
caja de lista se usa el mtodo addElement perteneciente al objeto variable
modelo3 o modelo4. Finalmente inhabilitamos el botn de comando Agregar.
12
12
En esta programacin se hace uso del mtodo remove() que elimina un tem de la
lista a travs de la variable objeto modelo3 modelo4 dado el valor del ndice. Al
final de la programacin se inhabilita el botn de comando Eliminar.
13
13
14
14
15
15