Foros del Web » Programación para mayores de 30 ;) » Java »

Listeners globales

Estas en el tema de Listeners globales en el foro de Java en Foros del Web. Hola, como están? Estoy haciendo y programa con una interfaz gráfica y tiene un JMenuBar, JToolBar, un JTabbedPanel (cada pestaña tiene 4 tablas dentro y ...
  #1 (permalink)  
Antiguo 04/08/2012, 11:01
 
Fecha de Ingreso: mayo-2010
Mensajes: 31
Antigüedad: 13 años, 10 meses
Puntos: 0
Listeners globales

Hola, como están? Estoy haciendo y programa con una interfaz gráfica y tiene un JMenuBar, JToolBar, un JTabbedPanel (cada pestaña tiene 4 tablas dentro y unos JLabel).
Con todo esto, logré asignarles a cada botón, cada menu y teclas una acción. El problema es que no funcionan donde quiero. Si quiero que el MouseListener, KeyListener y ActionListener funsionen en todo el programa, como tengo que hacerlo?
Probé asignandole todos estos listener solamente al JFrame que los contiene, pero no funciona en todos los componenetes.

Lo ideal seria asignarle todos los listener a todos los compoenentes o hay otra manera de hacerlo globalmente?

Saludos y gracias!!!!
  #2 (permalink)  
Antiguo 05/08/2012, 04:27
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 5 meses
Puntos: 454
Respuesta: Listeners globales

Hola:

La forma más "general" de añadir Listeners es

Toolkit.getDefaultToolkit().addAWTEventListener(.. ..)

Lleva un entero de "máscara" para indicar a qué eventos quieres suscribirte, esta máscara son las constantes en http://docs.oracle.com/javase/6/docs.../AWTEvent.html y tienes que combinarlas con un OR

Toolkit.getDefaultToolkit().addAWTEventListener(mi Listener, AWTEvent.MOUSE_EVENT_MASK | AWTEvent.KEY_EVENT_MASK)

Estos eventos son de más bajo nivel que por ejemplo el ActionListener, de hecho, da igual a que te suscribas, le pasarás un AWTEventListener y recibirás un AWTEvent, así que quizás tendrás que analizar el evento que recibes un poco más (ver si es de teclado, de ratón, de action, de qué componente, etc, etc)

Se bueno
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 05/08/2012, 15:02
 
Fecha de Ingreso: mayo-2010
Mensajes: 31
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Listeners globales

Muchas gracias chuidiang, me estaba volviendo loco porque no podia asignar los listener en los lugares correctos. Voy a implementar lo que me dijiste.

Saludos!!

Etiquetas: globales, listeners, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:39.