Page 1 of 1

Problema con bLostFocus

Posted: Wed Feb 27, 2008 1:47 pm
by ricardoi
Saludos.

Tengo un problema que cuando uso bLostFocus un un TGET no me actualiza el valor de la variable del TGET, me muestra el vaƱlor anterior de la Varible TGET. En el ejemplo el cGet2 si cambia Pero el cGet3 no, como puedo actualizar el cGet3.

Code: Select all

FUNCTION main()

LOCAL oDlg, oGet1, oGet2, oGet3, oBtn1, oBtn2, oBtn3, cGet1, cGet2, cGet3
LOCAL lCreate := .T., lSave := .F., lGo := .F.

STORE SPACE(30) TO cGet1, cGet2, cGet1

cGet3:= "9999"

DEFINE DIALOG oDlg RESOURCE "TESTFOCUS"

REDEFINE GET oGet1 VAR cGet1 ID 101 OF oDlg UPDATE WHEN lGo
REDEFINE GET oGet2 VAR cGet2 ID 102 OF oDlg UPDATE WHEN lGo
REDEFINE GET oGet3 VAR cGet3 ID 103 OF oDlg UPDATE WHEN lGo

  oGet3:bLostFocus = { || MsgInfo( cGet2+" "+cGet3 ) }

REDEFINE BUTTON oBtn1 ID 104 OF oDlg WHEN lCreate ;
         UPDATE ACTION Create(@lCreate,@lSave,@lGo, oGet1, oBtn1 )

REDEFINE BUTTON oBtn2 ID 105 OF oDlg WHEN lSave   ;
         UPDATE ACTION Save(@lCreate,@lSave,@lGo,@oBtn1)

REDEFINE BUTTON oBtn3 ID 106 OF oDlg ACTION oDlg:End()

ACTIVATE DIALOG oDlg CENTERED ON INIT oBtn1:SetFocus()


RETURN nil
el valor de cGet3 no cambia del 9999

Posted: Wed Feb 27, 2008 4:05 pm
by karinha
HACES UN DESVIO PARA UNA FUNCTION DE VALIDACION E CAMBIA EL VALOR DEL OBJETO EN TIEMPO REAL CON EL COMANDO VARPUT() Y REFRESH().

Posted: Wed Feb 27, 2008 7:40 pm
by ricardoi
Muchas Gracias Karinha.

lo voy a probar