Detectando el evento “deselect” de JTextField

¿Hay alguna manera de detectar si un JTextField está deseleccionado, es decir, el campo fue seleccionado pero ahora ha seleccionado algo más? La razón por la que quiero hacer esto es porque quiero verificar los formularios de mis usuarios en busca de caracteres ilegales antes de que intenten enviar sus datos. Si hay alguna forma más fácil de hacerlo, en lugar de intentar resolverlo, aceptaré con gusto la iluminación.

Al principio, usa un FocusAdapter y anula focusLost(FocusEvent fe) que se focusLost(FocusEvent fe) cuando JTextField pierda el foco, es decir, se seleccione otro componente.

Sin embargo, porque tienes un propósito:

Quiero verificar los formularios de mis usuarios en busca de caracteres ilegales antes de que intenten enviar sus datos

Id sugerir una lectura sobre cómo usar el subsistema de enfoque – validación de entrada

Mejores opciones que un FocusAdapter : hecho a medida para validar / restringir la entrada del usuario:

  • DocumentFilter . Vea aquí y esta variación para un ejemplo.
  • InputVerifier . Vea aquí para un ejemplo
  • JFormattedTextField . Vea aquí para un ejemplo
Intereting Posts