Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post Reply
User avatar
leandro
Posts: 1744
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Has thanked: 34 times
Been thanked: 10 times
Contact:

Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post by leandro »

Buenas tardes para todos,

como dice el encabezado, requiero cambiar el action, valid y picture en tiempo de ejecución de un get, se puede hacer esto?

De antemano gracias
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
User avatar
cnavarro
Posts: 6557
Joined: Wed Feb 15, 2012 8:25 pm
Location: España
Been thanked: 3 times

Re: Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post by cnavarro »

Leandro, explica un poco mejor lo que necesitas
Cambiar las propiedades de un objeto ya creado?, bien, pero desde otro get?, boton?,......no debería haber problema
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
hmpaquito
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post by hmpaquito »

Bueno, para bAction y bValid lo que haria yo sería simplemente poner un if en el codeblock de la expresion del action y del valid porque yo no tocaria los codeblocks originales. Puede funcionar o no, dependerá si se han pasado a variables intermedias.

Con el picture. Ahi habria que cambiarlo en la data ::cPicture.
User avatar
karinha
Posts: 7932
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post by karinha »

Algo asi?

Code: Select all | Expand


FUNCTION Main()

   Local oDlg, oGet, oBtn
   Local lTest := .t.
   Local cTipo := "J", oTEST1,oTest2
   Local cCGCCPF := Space(14)

   @ 10, 2 GET oTEST1 VAR cTipo pixel OF oDlg PICTURE "!";
           valid VerificaAltera(cTipo,oTest2,@cCgcCpf)

RETURN NIL

Function VerificaAltera( cTipo, oGet, cCgc )

    If !cTipo$"F/J"
        MsgStop("Deve ser digitado (F)isicio (J)uridico","Teste")
        Return(.F.)
    Endif

    If cTipo="J".and.oGet:cPicture!="@R 99.999.999/9999-99"
        cCgc:=Space(14)
        oGet:cPicture:="@R 99.999.999/9999-99"
        oGet:oGet:Picture:="@R 99.999.999/9999-99"
        oGet:Refresh()
     ElseIf cTipo="F".and.oGet:cPicture!="@R 999.999.999-99"
        cCgc:=Space(11)
        oGet:cPicture:="@R 999.999.999-99"
        oGet:oGet:Picture:="@R 999.999.999-99"
        oGet:Refresh()
    Endif

Return(.t.)
 


Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
leandro
Posts: 1744
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Has thanked: 34 times
Been thanked: 10 times
Contact:

Re: Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post by leandro »

Gracias a todos por responder

Me explico

Tengo definidos los objetos de la siguiente manera:

Code: Select all | Expand



....
    REDEFINE GET oGnit VAR identifica ID 4019 OF oDlgFct UPDATE BITMAP "Bbusc" ;
            ACTION prueba() VALID (prueba2,vSale)


       REDEFINE BUTTONBMP BtnS ID 4002 OF oDlgFct ACTION cambiaAction()

....

function prueba1()
....
return nil

function prueba2()
....
return nil

function prueba3()
....
return nil

function prueba4()
....
return nil

function cambiaAction()

  debe cambiar el en get oGnit el ACTION prueba()
  por la ACTION prueba3()

  debe cambiar el en get oGnit el VALID prueba2()
  por VALID prueba4()

return nil
 


Espero haberme echo entender

De antemano gracielas
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
User avatar
leandro
Posts: 1744
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Has thanked: 34 times
Been thanked: 10 times
Contact:

Re: Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post by leandro »

Gracias karinha

Lo del picture funcione correctamente, no se si de la misma manera se pueda hacer lo del ACTION y lo del VALID.

Gracielas
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
Marcelo Via Giglio
Posts: 1073
Joined: Fri Oct 07, 2005 3:33 pm
Location: Cochabamba - Bolivia
Has thanked: 1 time

Re: Cambiar ACTION, VALID Y PICTURE Tiempo ejecución

Post by Marcelo Via Giglio »

Leandro,

si tienes una condición por la cual cambias el picture, no veo problema de utilizar la misma para el valid y el action, define una función para el valid y otra para el action y pasa como parametro la condición y asi validas tomando en cuenta la condicion y haces los mismo con el action

....VALID miValid( .., condicion ) ACTION miAction( ...,condicion)

function miValid(...,condicion)

do case
case condicion = ...
prueba4()
case condicion = ...
prueba3()

endcase

reuturn .F.

function miAction(...,condicion)

do case
case condicion = ...
llamar prueba1()
case condicion = ...
llamar prueba2()

endcase

reuturn
Post Reply