Tutorial de Java

Nuevo Modelo de Eventos

Anterior | Siguiente
  1. Revisión del Modelo de Propagación
  2. Modelo de Delegación
  3. Receptores de Eventos
  4. Fuentes de Eventos
  5. Adaptadores
  6. Eventos de Bajo Nivel y Semánticos
  7. Control del Foco
  8. Movimiento del Foco
  9. Barras de Desplazamiento
  10. Movimientos del Ratón
  11. Eventos Generados por el Usuario
  12. Creación de Eventos Propios
  13. La Cola de Eventos del Sistema
  14. Intercambio de Componentes
  15. Asistente Propio
  16. Eventos en Swing

Javasoft ha introducido cambios significativos entre el JDK 1.0.2 y el JDK 1.1, pero quizá el cambio más importante haya sido en el manejo de eventos, en donde se ha reemplazado completamente el modelo de Herencia que se utilizaba en el JDK 1.0.2 por el modelo de Delegación implantado desde el JDK 1.1, que, por supuesto, sigue utilizándose en el JDK 1.2.

Revisión del Modelo de Propagación

El modelo de gestión de eventos de la versión 1.0 del AWT está basado en la Herencia. Para que un programa capture eventos de un interfaz, los Componentes deben ser subclases del interfaz y sobreescribir los métodos action() y handleEvent().

Cuando uno de los dos métodos anteriores devuelve true, el evento ya no es procesado más allá, en caso contrario, el evento se propaga a través de la jerarquía de componentes del interfaz hasta que el evento sea tratado o alcance la raíz de la jerarquía. El resultado de este modelo es que los programas tienen dos elecciones para estructurar su código de manejo de eventos:

  • Cada componente individual puede hacerse subclase para manejar específicamente un conjunto de eventos
  • Todos los eventos para una jerarquía completa (o subconjunto de ella) pueden ser manejados por un contenedor determinado

En este modelo de Herencia, no hay posibilidad de filtrar eventos. Los eventos son recibidos por los Componentes, independientemente de que los manejen o no. Este es un problema general de rendimiento, especialmente con eventos que se producen con mucha frecuencia, como son los eventos de ratón. Con el nuevo modelo, todos los sistemas debería ver incrementado su rendimiento, especialmente los sistemas basados en Solaris.



Navegador

Home | Anterior | Siguiente | Indice | Correo