Diferencia entre windowActivated y windowFocusGained

¿Cuál es la principal diferencia entre el método windowActivated (implementado desde WindowListener) y windowGainedFocus (implementado desde WindowFocusListener)?

La documentación de Java dice:

windowGainedFocus:

Se invoca cuando la ventana está configurada para ser la ventana enfocada, lo que significa que la ventana, o uno de sus subcomponentes, recibirá eventos de teclado.

windowActivated:

Se invoca cuando la ventana está configurada para ser la ventana activa. Solo un Marco o un Diálogo pueden ser la Ventana activa. El sistema de ventanas nativo puede denotar la ventana activa o sus hijos con decoraciones especiales, como una barra de título resaltada. La ventana activa siempre es la ventana enfocada o el primer cuadro o cuadro de diálogo que es propietario de la ventana enfocada.

Pero cual es la diferencia? ¿O es justo como dice que una ventana enfocada es un tipo de ventana activada?

¡Gracias por adelantado!

Respuesta 1

De Cómo escribir oyentes de ventanas que también refleja la cita en su pregunta:

windowActivated(WindowEvent)y windowDeactivated(WindowEvent):

Se llama justo después de que la ventana de escucha se active o desactive, respectivamente. Estos métodos no se envían a ventanas que no son cuadros o cuadros de diálogo. Por esta razón, se prefieren los métodos windowGainedFocus y windowLostFocus para determinar cuándo una ventana gana o pierde el foco.


Por windowActivatedlo tanto, solo se ejecuta cuando la ventana es un marco o cuadro de diálogo, mientras que windowGainedFocuses para todos los tipos.

Respuesta: 2

Tengo una cuenta regresiva que cuenta hasta una fecha específica. Cada marca (intervalo de 1 segundo) actualiza un cuadro de texto con los días / horas / minutos restantes hasta el evento. Mi problema es que los minutos (no sé ...

He estado tratando de comprender el concepto de subprocesamiento múltiple y confundido sobre el siguiente código: clase MyClass {contenido privado de StringBuilder = nuevo StringBuilder (); public void setContent () {...

He estado mirando el ejemplo publicado en OpenNTF: http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=Threads%20and%20Jobs mi problema es que parece que no puedo referirme a ...

Tengo una aplicación Java, y necesito información de ubicación. basado en una determinada IP. Actualmente, estoy usando http://freegeoip.net. Estoy usando Java, y lo que hago es obtener la información de geolocalización para el mencionado ...