Eventos Generados por Componentes Swing

Esta sección sumariza los eventos que pueden ser generados por componentes Swing, enfocándose en los eventos que manejan típicamente los programas. Los eventos generados por componentes Swing se dividen en tres categorías:

Eventos que todos los componentes Swing pueden generar

Como todos los componentes Swing descienden de la clase Component del AWT, todo ellos soportan los siguientes eventos definidos enel AWT:
Component
Notifica a los oyentes cambios en el tamaño, posición o visibilidad del componente.
Focus
Notifica a los oyentes que el componente a ganado o perdido la posibilidad de recibir entreda desde el teclado.
Key
Notifica a los oyentes las pulsaciones de teclas; sólo generado por el componene que tiene el foco del teclado.
Mouse
Notifica a los oyentes las pulsaciones del ratón y los movimientos de entrada y salida del usuario en el área de dibujo del componente.
Mouse Motion
Notifica a los oyentes cambios en la posición del cursor sobre el componente.

Aunque todos los componentes Swing descienden de la clase Container del aWT, muchos de ellos no son usados como contenedores. Por eso, técnicamente hablando cualquier componente Swing puede generar eventos container, que notifican a los oyentes que se ha añadido o eliminado un componente del contenedor. Sin embargo, hablando en forma real sólo los contenedores como los paneles, marcos, etc., generan eventos container.

Otros Eventos comunes

La siguiente tabla lista los eventos más comunmente manejados que varios componentes Swing pueden generar.

Nota: un asterisco '*' en un cabecera de columna indica un evento definido en el AWT. Todos los otros eventos de la tabla está definidos en javax.swing.event.
Componente Swing Tipos de Eventos Generados
action
*
caret
 
change
 
document
 
internal
frame
item
*
list
selection
undoable
edit
window
*
ColorSelectionModel
   (JColorChooser'smodelo de seleccion por defecto.)
Nota: Esta no es una subclase de JComponent!
    X            
Document
   (JTextComponent's modelo de datos.)
Nota: Esta no es una sublcase de JComponent!
      X       X  
JButton X   X     X      
JCheckBox X   X     X      
JComboBox X         X      
JDialog                 X
JEditorPane   X              
JFileChooser X                
JFrame                 X
JInternalFrame         X        
JList             X    
JMenuItem X   X     X      
JOptionpane                 X
JPasswordField X X              
JProgressBar     X            
JRadioButton X   X     X      
JSlider     X            
JTabbedPane     X            
JTextArea   X              
JTextComponent   X              
JTextField X X              
JTextPane   X              
JToggleButton X   X     X      
JViewport     X            
ListSelectionModel
   (JList's modelo de selección por defecto.)
Nota: Esta no es una subclase JComponent!
            X    
Timer
Nota: Esta not es una subclase JComponent!
X                

Eventos no manejados comunmente

Como recordatorio, esta sección lista otros eventos que los componentes Swing pueden generar pero que los programas típicos no necesitan manejar.

Todos los componentes que descienden de la clase JComponent pueden generar los eventos descritos en la siguiente lista:

Ancestor
Un componente genera un evento Ancestor cuando uno de sus contenedores acenstros es añadido o eliminado de un contenedor, es ocultado, visualizado o movido. Este tipo de evento es una implementación detallada y generalmente puede ser ignorado.
Property Change
Definido en java.beans los componentes Swing generan este tipo de eventos porque son compatibles con JavaBeans. Los Beans utilizan los eventos Change para implementar propiedades compartidas.
Vetoable Change
Definido en java.beans los componentes Swing generan este tipo de eventos porque son compatibles con JavaBeans. Los Beans utilizan estos eventos para implementar propiedades restringidas.
La siguiente tabla lista todos los otos eventos definidos en javax.swing.event que no se han mencionado anteriormente.
Eventos de Editor de Celdas Eventos de Teclas de Menú Eventos de Expansión de Árboles
Hyperlink Menu Tree Model
List Data Popup Menu Tree Selection
Menu Drag Mouse Table Model Tree Will Expand

Ozito