FoxPro/Visual FoxPro - set focus

   
Vista:

set focus

Publicado por marcelo (6 intervenciones) el 20/10/2011 19:14:42
hola :

tengo dos combobox en los cuales selecciono datos
Ademas tengo un textbox en el cual valido que en c/u de los combos la opción no quede vacia .
esto lo hago ene l evento valid del textbox:

if empty(thisform.combo.value)
messagebox("campo vacio")
thisform.combo1.setfocus()
return
endif

el problema que tengo y que he visto que no se puede hacer ,es usar setfocus dentro de un evento valid o losfocus o gotfocus.

Lo que necesitaria saber es que alternativa de solucion tengo paar retornar el foco al combobox .en que event ome recomiendan que ponga el setfocus ? 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

set focus

Publicado por sebastian (244 intervenciones) el 20/10/2011 21:41:28
Hola quizas ayude mi comentario prueba poner el mismo codigo en el sguiente control de esta manera cuando el combo este vacio y saltes al siguiente control este lo regrese al combo.
prueba en gotfocus del control que le sigue.
IF EMPTY(THISFORM.COMBO1.VALUE)
=MESSAGEBOX("VACIO")
THISFORM.COMBO1.SETFOCUS()
ENDIF

Espero haberte ayudado 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
Imágen de perfil de Mauricio

set focus

Publicado por Mauricio (1368 intervenciones) el 20/10/2011 21:49:02
Marcelo, en el evento Valid de cada combobox, utiliza esto:
* En el combobox1
if empty(thisform.combo1.value)
messagebox("campo vacio")
return .f.
endif
*
* En el combobox2
if empty(thisform.combo2.value)
messagebox("campo vacio")
return .f.
endif
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

set focus

Publicado por Carlos Cuye cachosistemas@hotmail.com (75 intervenciones) el 21/10/2011 20:31:35
Si tu idea es bloquear el ingreso al textbox según alguna condición, en este caso, el valor de algún combo, podrías usar el evento When del textbox, colocando en él un código similar al propuesto anteriormente:

IF EMPTY(THISFORM.COMBO1.VALUE)
=MESSAGEBOX("VACIO")
THISFORM.COMBO1.SETFOCUS()

RETURN .F. && Este comando en el evento When, retornando el parámetro False, produce el bloqueo/rechazo del enfoque del objeto.

ENDIF
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