SoloCodigo

Programación General => Visual FoxPro => Mensaje iniciado por: sergio leonar en Miércoles 27 de Septiembre de 2006, 18:12

Título: Ayuda Por Favor !!!!!!!!!!!!!!!!
Publicado por: sergio leonar en Miércoles 27 de Septiembre de 2006, 18:12
Amigos Hola a todos. Tengo Problemas con SetFocus en un form. Tengo un TxTFecha. que en el evento LostFocus , si deja el usuario la fecha vacia Sale un mensaje de k debe completarla , pero no vuelve el cursor a este campo. les mando el codigo que puse para saber donde esta el error. Gracias a Todos.

OBJETO abl txtFecha   Procedimineto LostFocus

IF thisform.Pageframe1.Page1.txtfecha.value=CTOD("  /  /  ")
cMessageTitle = 'Cmpleta eL Campo Fecha'
cMessageText = "Programa Fusion"
nDialogType = 4+32+0

nResp=MESSAGEBOX(cMessageTitle,nDialogType,cMessageText)
DO CASE
   CASE nResp = 6
   THISFORM.Pageframe1.Page1.txtfecha.SETFOCUS  (NO RESPONDE Y PASA AL CAMPO SIGUIENTE)
      THISFORM.Pageframe1.Page1.Command1.Enabled=.t.
   CASE nResp = 7
   THISFORM.Pageframe1.Page1.Command7.SETFOCUS
      THISFORM.Pageframe1.Page1.Command1.Enabled=.f.
   
ENDCASE

ENDIF

THISFORM.Pageframe1.Page1.refresh
THISFORM.REFRESH

Aprovecho para recordarles k deje una discucion con respecto a trabajar en red y nadie me supo contestar. Almenos una idea por Fi SR JUEZ ??????
gRACIAS
Título: Re: Ayuda Por Favor !!!!!!!!!!!!!!!!
Publicado por: Widark en Miércoles 27 de Septiembre de 2006, 18:50
Que tal sergio leonar!

Seria mejor que la validación la hicieras en el evento Validate de ese texto, así el control no perderia el foco.

Saludos
Título: Re: Ayuda Por Favor !!!!!!!!!!!!!!!!
Publicado por: arielb en Jueves 28 de Septiembre de 2006, 16:22
que tal amigo.

lo que dice el amigo widark es cierto, pero tendrias que cambiar lo que haces un poco
ya que no puedes utilizar setfocus en el valid debido a que el evento when te estará retornando
.F.
asi que en el valid le pones un return 0, yle quitas la linea que le tienes setfocus
Título: Re: Ayuda Por Favor !!!!!!!!!!!!!!!!
Publicado por: arielb en Jueves 28 de Septiembre de 2006, 16:29
Citar
[:], Yo si se lo que es trabajar duro, por que lo he visto.

jejeje widark que buena firma  :D
Título: Re: Ayuda Por Favor !!!!!!!!!!!!!!!!
Publicado por: egerman63 en Jueves 10 de Enero de 2008, 16:46
Solucion simple y sencilla

solo tienes que validar en campo fecha en el campo siguiente donde el cursor cae y veras que retorna

if xxx=xxx
 thisform.textfecha.setfocus
 return .f.
endif
y veras que vuelve en seguida

saludos
EG
Título: Re: Ayuda Por Favor !!!!!!!!!!!!!!!!
Publicado por: Izcariote en Martes 19 de Febrero de 2008, 17:41
intenta con este codigo en el gotfocus del siguiente texto a modificar u objeto que tome el focus

Código: Text
  1. if thisform.Pageframe1.Page1.txtfecha.value=CTOD(" / / ")
  2.      thisform.Pageframe1.Page1.txtfecha.setfocus
  3. endif
  4.