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