¿Cómo puedo ignorar cualquier KeyListeners que pueden haber sido agregadas por los programas cliente cuando se cumplen ciertas condiciones?
-
02-10-2019 - |
Pregunta
No he tenido ninguna suerte con la web por lo que esto se refiere, el más cercano que he llegado es a leer sobre el EventQueue
, pero me parece que no puede encontrar una manera de eliminar un evento de manera predeterminada.
he sobrecargado un JTextField
para que muestre los caracteres restantes de la palabra "adivinado" (parte de un componente de auto completo) y cuando "Enter" se pulsa mientras el JTextField
sigue siendo "adivinar" una palabra que lo deseen para relleno en la parte restante de la palabra (this.setText(this.currentGuess);
) e ignorar cualquier otra KeyListeners
que puede haber sido añadido a la componente en un programa cliente.
A modo de prueba, en el constructor que estoy añadiendo dos KeyListeners
y hasta ahora nada de lo que he hecho ha logrado evitar que el segundo de tiro.
Solución
debería ser capaz de utilizar getKeyListeners()
para ver quién está escuchando y retire todos menos a su oyente deseada.
Adición: Considera también implementaciones alternativas, como la que se discute aquí .