Вы находитесь на странице: 1из 4

06. EJERCICIO GUIADO.

JAVA: CUADROS DE LISTA


1. Realiza un nuevo proyecto.
2. En la ventana principal debes aadir lo siguiente:
a. Un botn Aceptar llaado btnAceptar.
b. Una eti!ueta con borde llaada etiResultado.
". Aade un cuadro de lista. #os cuadros de listas son ob$etos %#ist.
&. '(biale el nobre al %#ist. )en cuidado* ya !ue en los %#ist aparecen siepre
dentro de otro ob$eto llaado $+croll,ane. +i iras en el -nspector* ver(s !ue al
pulsar en el botn . del $+croll,ane aparecer( tu %#ist:
1
/. Aprovec0a para cabiarle el nobre al %#ist. El nuevo nobre ser( lst'olores.
1. +i te 2i$as en el %#ist* consiste en un cuadro !ue contiene una serie de -tes. Estos
eleentos pueden ser cabiados a trav3s de la propiedad 4odel del %#ist.
5. 6usca la propiedad 4odel y 0az clic en el botn de los tres puntos. Aparecer( un
cuadro de di(logo parecido al siguiente. +olo tienes !ue seleccionar los eleentos
!ue !uieras y pulsar el botn 6orrar 7Reove8 para eliinarlos de la lista.
9. ,uedes aadir eleentos escribi3ndolos en el cuadro Art:culo y luego pulsando el
botn Aadir 7Add8.
;. <ebes 0acer !ue la lista sea la siguiente:
Ro$o
=erde
Azul
1>. A0ora prograareos el actionPerformed del botn Aceptar. <ebes introducir el
siguiente cdigo:
String mensaje;

mensaje="El color seleccionado es: "+lstColores.getSelectedValue().toString();
etiResultado.setText(mensaje);
2
11. ?bserva el cdigo:
a. +e crea una variable de cadena llaada mensaje.
b. @ dentro de esta variable se introduce una concatenacin de cadenas.
c. ?bserva la parte: lstColores.getSelectedValue()* esta parte devuelve
el valor seleccionado de la lista.
d. Aay !ue tener en cuenta !ue este valor no es una cadena* por eso 0ay !ue
convertirla a cadena aadiendo .toString().
e. <e esta anera puedes eBtraer el eleento seleccionado de un cuadro de
lista.
2. #uego sipleente poneos la cadena ensa$e dentro de la eti!ueta.
12. E$ecuta el prograa y observa su 2uncionaiento. ,or e$eplo* si seleccionas el
color verde y pulsas aceptar el resultado ser( el siguiente:
1". =aos a e$orar el prograa. ,uede suceder !ue el usuario no seleccione ningCn
valor del cuadro de lista* y ser:a interesante en este caso !ue el prograa avisara de
ello. 'abie el cdigo del botn Aceptar por este otro cdigo:
String mensaje;

i (lstColores.getSelected!ndex()=="#) $
mensaje="%o &a' un color seleccionado.";
( else $
mensaje="El color seleccionado es: "+lstColores.getSelectedValue().toString();
(
etiResultado.setText(mensaje);
1&. ?bserva el cdigo:
a. El 3todo get+elected-ndeB e dice el :ndice del eleento !ue est(
seleccionado.
3
b. ,or e$eplo* si est( seleccionado el priero el :ndice es >* si est(
seleccionado el segundo el :ndice es 1* etc.
c. +i este 3todo devuelve D1* entonces es seal de !ue no 0ay ningCn
eleento seleccionado.
d. Aprovec0o esto para ostrar un ensa$e indicando lo sucedido.
1/. +i e$ecuta el prograa y pulsa el botn Aceptar sin seleccionar nada el resultado
deber:a ser el siguiente:
11. +e podr:a 0aber prescindido del botn aceptar si el cdigo anterior se 0ubiera puesto
en el evento ouse'licEed del cuadro de lista en vez de en el actionPerformed del
botn Aceptar. En este caso* cada vez !ue se seleccionara un eleento de la lista*
auto(ticaente aparecer:a el ensa$e en la eti!ueta.
+e ania a !ue realice esta odi2icacin.
CONCLUSIN
El objeto JList perite !re"r !#"$ros $e list". Estos objetos !o%tie%e% #%" serie $e
elee%tos &#e p#e$e% ser sele!!io%"$os.
A tr"'(s $el (to$o )etSele!te$V"l#e se p#e$e obte%er el elee%to &#e est*
sele!!io%"$o. +Re!#er$" !o%'ertirlo " !"$e%" !o% toStri%),
A tr"'(s $el (to$o )etSele!te$I%$e- se p#e$e s"ber l" posi!i.% $el elee%to
sele!!io%"$o. Si este /%$i!e es 012 e%to%!es s"breos &#e %o 3"4 %i%)5% elee%to
sele!!io%"$o.
4