Page 1 of 1

Creando botones desde la Aplicación...

PostPosted: Mon Jan 16, 2006 6:14 pm
by Joel Andujo
Foro buenos dias de nuevo, tengo un detalle
Estoy creado unos botones desde la aplicación, pero no logro definir
el ACTION, es decir no se ejecuta la que le defino
este es mi código :

*---// recorro los botones del dialogo y les asigno su Action
for i:=1 to len(oDlg:aControls[i])
oDlg:aControls[i]:bAction:={|nId| ::PutVal(oDlg:aControls[i]:cTitle) }
next

*----------------------------*
METHOD PutVal(cTitle) CLASS TBmpGet
? cTitle
retu Nil

cuendo clikeo sobre los botones siempre me muestra el últimi
cTitle y no el de cada uno de ellos alguna sugerencia

Saludos
Joel Andujo

PostPosted: Mon Jan 16, 2006 7:01 pm
by Antonio Linares
Joel,

El codeblock te está manteniendo el último valor de i. Tienes que usar lo que se denomina "detached locals":

oDlg:aControls[i]:bAction:= GenBlock( oDlg, i, Self )

...

function GenBlock( oDlg, i, Self )

return {|nId| ::PutVal(oDlg:aControls[i]:cTitle) }

PostPosted: Mon Jan 16, 2006 7:20 pm
by Joel Andujo
Gracias Maestro, eso era

Saludos
Joel Andujo