Page 1 of 1

Ayuda con @ PUSHBUTTON

Posted: Mon Feb 03, 2020 4:12 pm
by ruben Dario
Saludos al Forum
Tengo este codigo como hago para que me tome los valores de STATE diferentes deacuerdo a la opcion

Caso 1
No lo toma el valor toma el ultimo nCont

Code: Select all

nBtn := 0
    FOR nCont = 1 TO Len( ::acButtons )   
           @ pos, iif( nCont == 1, cpos+2, Col()+ 6 ) GET lPrimero PUSHBUTTON;
           CAPTION ::acButtons[ nCont,5 ] STATE  { || nBtn := IsPressed1(nCont)  } ;  
           MESSAGE ::acButtons[ nCont,3 ] COLOR if(::jlopm1,::cBtnClr,::cBtnCl1)
        endif
   NEXT  

      FUNCTION IsPressed1( nButton )
      IF GetActive():control:buffer
         ReadKill( .T. )
      ELSE
         nButton := 0
      ENDIF
   RETURN nButton

 
Caso 2, tampoco lo ejecuta, el valor del cComExec puede tomar diferentes valores

Code: Select all

  cComExec := { || ::reg_nav0001("X0") } 
    FOR nCont = 1 TO Len( ::acButtons )   
           @ pos, iif( nCont == 1, cpos+2, Col()+ 6 ) GET lPrimero PUSHBUTTON;
           CAPTION ::acButtons[ nCont,5 ] STATE  { ||cComExec  } ;  
           MESSAGE ::acButtons[ nCont,3 ] COLOR if(::jlopm1,::cBtnClr,::cBtnCl1)
        endif
   NEXT  

 
Ninguna de los _ funciona.
Algquien del forum tiene una solucion.

Re: Ayuda con @ PUSHBUTTON

Posted: Mon Feb 03, 2020 7:16 pm
by JESUS MARIN
Buenas tardes

Para un asunto similar, poner un bAction a unos botones variables, lo solucioné pasando como referencia NO el valor de nCount, pues va cambiando, sino haciendo un codeblock por código .

Creo recordar que era la solución propuesta por Cristóbal (ese genio ¡¡¡¡¡ )

Function HazBlock( x )
Return &("{ || Pon(" +LTrim(Str(x))+" ) }" )

Eso si, la function Pon()…… puedes llamarla como quieras, no puede ser una función STATIC. En ese caso no funciona,

Espero te ayude.

Nota : Básicamente, que me rectifiquen los que saben, es que uno se compila ( y te retorna el ultimo valor) y el otro se aplica en tiempo de ejecución (independientemente del valor de la variable, en tu caso nCount)

Re: Ayuda con @ PUSHBUTTON

Posted: Tue Feb 04, 2020 2:59 pm
by ruben Dario
Gracias Por tu informacion.

Tampoco funciona

Re: Ayuda con @ PUSHBUTTON

Posted: Wed Feb 05, 2020 1:06 pm
by albeiroval