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

Problema con los focus en Java

Estas en el tema de Problema con los focus en Java en el foro de Java en Foros del Web. Tengo un problema y me estoy volviendo loco para arreglarlo. El problema es que tengo un proceso que es cuando pierda el foco de un ...
  #1 (permalink)  
Antiguo 19/11/2003, 03:53
 
Fecha de Ingreso: noviembre-2003
Mensajes: 1
Antigüedad: 21 años, 1 mes
Puntos: 0
Problema con los focus en Java

Tengo un problema y me estoy volviendo loco para arreglarlo.
El problema es que tengo un proceso que es cuando pierda el foco de un textbox compruebe si su contenido es correcto y te de un mensaje de error.

El problema lo tengo que te da el mensaje de error, pero te deja el foco en el boton, checkbox o lo que sea que has pulsado y hasta que no vuelvas a pinchar en el no pierde el foco.

Supongo que se haga con la función lostfocus, pero es que nio se como funciona y además por internet te viene la función pero no te explica como se usa.

En internet viene que es así: lostFocus(java.awt.Event e, java.lang.Object o)
¿ Como hago para llamarla ?
¿ Cual es el evento y cual el objeto ?

Estoy usando componentes swing y este es él codigo del proceso:

void Textarray_focusLost(FocusEvent e) {
if (Textarray[elementoarray].getText().equals("")){
error = "Tienes que introducir una cantidad en ";
error = error + Boxarray[elementoarray].getText();
JOptionPane.showMessageDialog(null, error, "Fallo", JOptionPane.ERROR_MESSAGE);

}
else {
try {
String num = new String(Textarray[elementoarray].getText());
Integer aux = new Integer(num);
int numero = aux.intValue();
}
catch (NumberFormatException ex) {
error = "El valor introducido en ";
error = error + Boxarray[elementoarray].getText();
error = error + " no es numérico";
JOptionPane.showMessageDialog(null,error,"Fallo",J OptionPane.ERROR_MESSAGE);
}
}
}

LO quiero que haga es que cuando pierda el foco del textbox que compruebe su contenido y deje el foco en el textbox, no en el boton, array, ... que halla pulsado.
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 02:30.