FoxPro/Visual FoxPro - ¿Qué va primero?

 
Vista:

¿Qué va primero?

Publicado por Claudia (91 intervenciones) el 09/04/2007 17:02:57
Hola a todos

Tengo un TEXTBOX donde se produce la siguiente secuencia de eventos

WHEN -> GOTFOCUS -> (cargo el dato) -> VALID -> LOSTFOCUS -> y vuelve al VALID!!!

es decir, el valid se ejecuta 2 veces.

En el VALID valida que el dato (this.value) se encuentre en la tabla correspondiente

En el LOSTFOCUS hago foco en otros TEXTBOX dependiendo del contenido de this.value

No tiene otra cosa...

¿POrqué me vuelve a repetir el VALID? ¿no SE DEBERIA EJECUTAR UNA SOLA VEZ?

El problema es que tengo un mensaje de error de carga... que cuando el usuario le erra aparece 2 veces!!

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:¿Qué va primero?

Publicado por Plinio (7841 intervenciones) el 09/04/2007 17:20:37
El Valid y el LostFocus son practicamente lo mismo. Se ejecutan cuando el objecto pierde el foco, si pones un Messagebox el objecto pierde el foco.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:¿Qué va primero?

Publicado por neo (1604 intervenciones) el 09/04/2007 17:43:23
Oye no es objeto en lugar de objecto??

Tienes razon, con un "mensaje" o un "wait window" se solucionaría el problema.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Trato de aclararles un poco más mi duda...

Publicado por Claudia (91 intervenciones) el 09/04/2007 18:17:36
Entiendo lo que ustedes me dicen.

El problema que tengo que SIEMPRE (independientemente de que use un MESSAGEBOX o un Wait WIndow) se ejecuta 2 veces el VALID del objeto textbox.

Por eso me llama la anteción...

Ya sé que Valid y Lostfocus son similares, pero en el caso del Lostfocus permite hacer SETFOCUS a otro objeto y el Valid no te deja.

En el caso del Lostfocus no se puede devolver .f. si está mal...

¿Se entiende?

Normalmente el proceso debería ser VALID-> LOSTFOCUS

pero a mí me sigue esta secuencia VALID -> LOSTFOCUS -> VALID

y repito, en el LOSTFOCUS no llama a nada, solamente hace un setfocus a otro objeto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Trato de aclararles un poco más mi duda...

Publicado por neo (1604 intervenciones) el 09/04/2007 18:31:12
Podrías escribir un poco del codigo que tienes en valid?

Para comprender mejor...

En el caso del Lostfocus no se puede devolver .f. si está mal...

Puedes hacerlo si utilizas una condicion con " If "

Saludos►
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Trato de aclararles un poco más mi duda...

Publicado por Plinio (7841 intervenciones) el 10/04/2007 00:14:11
y con un NODEFAULT no se ejecuta la perdida del foco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Trato de aclararles un poco más mi duda...

Publicado por Ernesto Hernandez (4623 intervenciones) el 10/04/2007 01:37:55
En el caso del Lostfocus no se puede devolver .f. si está mal

claro que si se puede compañera .

RETURN TO MASTER
RETURN .F.

Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¿Qué va primero?

Publicado por Gabriel (427 intervenciones) el 09/04/2007 20:25:54
Amiga Claudia :
Una forma de probar lo que mis colegas confirman es evitando el uso del evento LOSTFOCUS y ademas hacer una buena validacion, de esta forma ya no te sucedera lo que mencionas...
Por lo que observo estas utilizando el Evento LOSTFOCUS para direccionar el foco a otros controles en este caso puedes utilizar el evento KEYPRESS que facilita esta tarea...

Si aun persisten los problemas...
Seria recomendble que indiques el codigo que utilizas en el evento VALID para mejorarlo.

Saludos,

GABRIEL
(Lima-Perú)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¿Qué va primero?

Publicado por jorge (423 intervenciones) el 09/04/2007 20:56:07
Hola buen dia a ti y a todos.

En primera no se que tipo de validacion pretendes hacer en el lostfocus.
pero tienes otros eventos para cambiar la secuencia de el tabulador...
si el valid no te satisface, puedes utilizar el evento KeyPress o bien crear un procedimiento para hacer la validacion y desde este rediriges tu codigo.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar