Resumen

529

• Todo 

objeto 

JComponent

 tiene una variable de instancia llamada 

listenerList

, la cual hace referencia a un objeto 

de la clase 

EventListenerList

 (paquete 

javax.swing.event

). Cada objeto de una subclase de 

JComponent

 man-

tiene las referencias a todos sus componentes de escucha registrados en la variable 

listenerList

.

• Todo componente de la GUI soporta varios tipos de eventos, incluyendo los eventos de ratón, de teclado y otros. Cuan-

do ocurre un evento, éste se despacha sólo a los componentes de escucha de eventos del tipo apropiado. El componente 
de la GUI recibe un ID de evento único, especifi cando el tipo de evento, el cual utiliza para decidir el tipo de compo-
nente de escucha al que debe despacharse el evento, y cuál método llamar en cada objeto componente de escucha.

Sección 11.8 

JButton

• Un botón es un componente en el que el usuario hace clic para desencadenar cierta acción. Todos los tipos de boto-

nes son subclases de 

AbstractButton

 (paquete 

javax.swing

), la cual declara las características comunes para los 

botones de Swing. Por lo general, las etiquetas de los botones usan la capitalización tipo título de libro; un estilo que 
capitaliza la primera letra de cada palabra signifi cativa en el texto, y no termina con ningún signo de puntuación.

• Los botones de comandos se crean con la clase 

JButton

.

• Un 

objeto 

JButton

 puede mostrar un objeto 

Icon

. Para proporcionar al usuario un nivel adicional de interacción 

visual con la GUI, un objeto 

JButton

 también puede tener un icono de sustitución: un objeto 

Icon

 que se muestra 

cuando el usuario coloca el ratón sobre el botón.

• El 

método 

setRolloverIcon

 (de la clase 

AbstractButton

) especifi ca la imagen a mostrar en un botón, cuando el 

usuario coloca el ratón sobre él.

Sección 11.9 Botones que mantienen el estado

• Los componentes de la GUI de Swing contienen tres tipos de botones de estado: 

JToggleButton

,

JCheckBox

 y 

JRadioButton

.

• Las 

clases 

JCheckBox

 y 

JRadioButton

 son subclases de 

JToggleButton

. Un objeto 

JRadioButton

 es distinto de un 

objeto

JCheckBox

 en cuanto a que, generalmente, hay varios objetos 

JRadioButton

 que se agrupan, y sólo puede 

seleccionarse un botón en el grupo, en un momento dado.

• El 

método 

setFont

 (de la clase 

Component

) establece el tipo de letra de un componente a un nuevo objeto de la clase 

Font

 (paquete 

java.awt

).

• Cuando el usuario hace clic en un objeto 

JCheckBox

, ocurre un evento 

ItemEvent

. Este evento puede manejarse 

mediante un objeto 

ItemListener

, que debe implementar al método 

itemStateChanged

. El método 

addItemLis-

tener

 registra el componente de escucha para un objeto 

JCheckBox

 o 

JRadioButton

.

• El 

método 

isSelected

 de 

JCheckBox

 determina si un objeto 

JCheckBox

 está seleccionado.

• Los 

objetos 

JRadioButton

 son similares a los objetos 

JCheckBox

 en cuanto a que tienen dos estados: seleccionado y 

no seleccionado. Sin embargo, generalmente los botones de opción aparecen como un grupo, en el cual sólo puede 
seleccionarse un botón a la vez. Al seleccionar un botón de opción distinto, se obliga a los demás botones de opción 
a deseleccionarse.

• Los 

objetos 

JRadioButton

 se utilizan para representar opciones mutuamente exclusivas.

• La relación lógica entre los objetos 

JRadioButton

 se mantiene mediante un objeto 

ButtonGroup

 (paquete 

javax.

swing

).

• El 

método 

add

 de 

ButtonGroup

 asocia a cada objeto 

JRadioButton

 con un objeto 

ButtonGroup

. Si se agrega más 

de un objeto 

JRadioButton

 seleccionado a un grupo, el primer objeto 

JRadioButton

 seleccionado que se agregue 

será el que quede seleccionado cuando se muestre la GUI en pantalla.

• Los 

objetos 

JRadioButton

 generan eventos 

ItemEvent

 cuando se hace clic sobre ellos.

Sección 11.10 

JComboBox

y el uso de una clase interna anónima para el manejo de eventos

• Un 

objeto 

JComboBox

 proporciona una lista de elementos, de los cuales el usuario puede seleccionar uno. Los obje-

tos

JComboBox

 generan eventos 

ItemEvent

.

• Cada elemento en un objeto 

JComboBox

 tiene un índice. El primer elemento que se agrega a un objeto 

JComboBox

aparece como el elemento actualmente seleccionado cuando se muestra el objeto 

JComboBox

. Los otros elemen-

tos se seleccionan haciendo clic en el objeto 

JComboBox

, el cual se expande en una lista, de la cual el usuario puede 

seleccionar un elemento.

• El 

método 

setMaximumRowCount

de

JComboBox

establece el máximo número de elementos a mostrar cuando el 

usuario haga clic en el objeto 

JComboBox

. Si hay elementos adicionales, el objeto 

JComboBox

 proporciona una barra 

de desplazamiento que permite al usuario desplazarse por todos los elementos en la lista.

• Una clase interna anónima es una forma especial de clase interna, que se declara sin un nombre y por lo general 

aparece dentro de la declaración de un método. Como una clase interna anónima no tiene nombre, un objeto de la 
clase interna anónima debe crearse en el punto en el que se declara la clase.

• El 

método 

getSelectedIndex

 de 

JcomboBox

 devuelve el índice del elemento seleccionado.

11_MAQ_CAP_11.indd529

4/19/081:26:26AM