Favor Ayuda con CHECKBOX

Favor Ayuda con CHECKBOX

Postby remtec » Thu Nov 08, 2018 3:48 pm

Amigos

Muy buen dia, espero que se encuentren muy bein.

Tengo el siguiente problema:

Tengo un CHECKBOX, en la cual toma el valor .T. o .F., necesito que cuando tome el Valor sea .F., un grupo de variables tomen igualmente un valor .F..

Este es el codigo, que no realiza lo que necesito, he realizado muchos cambios en la forma y nada:

Desde ya muchas gracias.

Atte.
Antonio

Code: Select all  Expand view

    Define Dialog oDlgEdit Resname "#1010"
   
    REDEFINE SAY oSay1 ID 111 PROMPT "ACTUALIZA USUARIOS Y PERMISOS" OF oDlgEdit FONT oFont  COLORS RGB(12, 135, 27)

        If lPara
            Redefine Get oCod_usu1 Var Cod_usu1 Id 117 Of oDlgEdit Update Picture "@!"  FONT oFont1 ;
                 Valid Existe_usu(Cod_usu1)
        Else
            Redefine Say oCod_usu1 Prompt Cod_usu1 Id 117 Of oDlgEdit Picture "@!"  FONT oFont1 COLORS nRGB(9, 11, 10), nRGB(73, 250, 202)
        Endif

    Redefine Get oNom_usu1 Var Nom_usu1 Id 118 Of oDlgEdit Update Picture "@!" FONT oFont1   COLORS nRGB(9, 11, 10), nRGB(73, 250, 202)
    Redefine Get oCla_usu1 Var Cla_usu1 Id 119 Of oDlgEdit Update Picture "@!" FONT oFont1   COLORS nRGB(9, 11, 10), nRGB(73, 250, 202)
   
    Redefine Get oNro_usu1 Var Nro_usu1 Id 121 Of oDlgEdit Update Picture "999" FONT oFont1 COLORS nRGB(9, 11, 10), nRGB(73, 250, 202) NO MODIFY

       ** Este el CheckBox

    REDEFINE CHECKBOX oEst_usu1 VAR Est_usu1  ID 122 OF oDlgEdit   ON CLICK (Chek_esta( oDlgEdit ),oPer_agr1:Refresh(),oPer_mod1:Refresh(),oPer_eli1:Refresh(),oPer_imp1:Refresh())

        ** Este Grupo de Variables Debe tomar Valor .F., cuando Esta_usu1 sea .F.

    Redefine CHECKBOX oPer_Agr1     Var Per_Agr1 Id 123 Of oDlgEdit
    Redefine CHECKBOX oPer_Mod1     Var Per_mod1 Id 124 Of oDlgEdit
    Redefine CHECKBOX oPer_Eli1     Var Per_eli1 Id 125 Of oDlgEdit
    Redefine CHECKBOX oPer_Ver1     Var Per_ver1 Id 126 Of oDlgEdit
    Redefine CHECKBOX oPer_Imp1     Var Per_imp1 Id 127 Of oDlgEdit
       
       REDEFINE BTNBMP  Id 153 Resource "#8029" Of oDlgEdit ;
              Action (Graba_usu(.t.),oDlgEdit:Close(),oDlgEdit:END())

        REDEFINE BTNBMP ID 152 Resource "#8004" OF oDlgEdit ;
            ACTION (oDlgEdit:Close(),oDlgEdit:END())

       Activate Dialog oDlgEdit Centered
      oFont1:END()
 

  Return

Static Function Chek_esta(oDlgEdit)
    If !Est_usu1
         Stor .F. to Per_agr1,Per_mod1,Per_eli1,Per_imp1
    Endif
    oDlgEdit:Refresh()
    Return oDlgEdit


 
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 717
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda con CHECKBOX

Postby armando.lagunas » Thu Nov 08, 2018 4:49 pm

Yo lo haría asi:

Code: Select all  Expand view


// Coloca esto al principio de tu prg

STATIC Per_agr1,Per_mod1,Per_eli1,Per_imp1, Est_usu1, Per_ver1

Est_usu1 := .f.
Per_agr1 := .f.
Per_mod1 := .f.
Per_eli1 := .f.
Per_imp1 := .f.
Per_ver1 := .f.

//-----

...
...
       ** Este el CheckBox

    REDEFINE CHECKBOX oEst_usu1 VAR Est_usu1  ID 122 OF oDlgEdit  
                                 oEst_usu1:bChange := {|| Chek_esta( oDlgEdit ), oPer_agr1:Refresh(), oPer_mod1:Refresh(), oPer_eli1:Refresh(), oPer_imp1:Refresh())

        ** Este Grupo de Variables Debe tomar Valor .F., cuando Esta_usu1 sea .F.

    Redefine CHECKBOX oPer_Agr1     Var Per_Agr1 Id 123 Of oDlgEdit
    Redefine CHECKBOX oPer_Mod1     Var Per_mod1 Id 124 Of oDlgEdit
    Redefine CHECKBOX oPer_Eli1     Var Per_eli1 Id 125 Of oDlgEdit
    Redefine CHECKBOX oPer_Ver1     Var Per_ver1 Id 126 Of oDlgEdit
    Redefine CHECKBOX oPer_Imp1     Var Per_imp1 Id 127 Of oDlgEdit
       
...
...

Static Function Chek_esta(oDlgEdit)
   
   If !Est_usu1
        Per_agr1 := .f.
        Per_mod1 := .f.
        Per_eli1 := .f.
        Per_imp1 := .f.
        Per_ver1 := .f.
    Endif

    oDlgEdit:Refresh()

    Return Nil

 
Last edited by armando.lagunas on Thu Nov 08, 2018 4:49 pm, edited 1 time in total.
SkyPe: armando.lagunas@hotmail.com
Mail: armando.lagunas@gmail.com
User avatar
armando.lagunas
 
Posts: 346
Joined: Mon Oct 05, 2009 3:35 pm
Location: Curico-Chile

Re: Favor Ayuda con CHECKBOX

Postby cmsoft » Thu Nov 08, 2018 4:49 pm

Suponiendo que los oPer_... son static

Code: Select all  Expand view

Static Function Chek_esta()
    If !Est_usu1
         oPer_agr1:UnCheck()
         oPer_mod1:UnCheck()
         oPer_eli1:UnCheck()
         oPer_imp1:UnCheck()
    Endif
Return nil
 
User avatar
cmsoft
 
Posts: 1189
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: Favor Ayuda con CHECKBOX

Postby remtec » Thu Nov 08, 2018 5:40 pm

Amigos

Armando y Cesar:

Aplique ambas soluciones y no resulto, incluso declarando como Static las oPer_agr1,.... En la Function Chek_esta(), indicabla variable no definida a oPer_agr1 y las otras, pase todas las variables como parametros a la Function y nada, que necesito es que todas las variables Per_agre1,Per_mod1,Per_eli,..., tomen el Ticket del Checkbox y se muestre en la pantalla, para no estar tickeando una por una.

Quedo atento a otras opciones.

Atte.
Antonio
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 717
Joined: Fri May 12, 2017 2:50 pm

Re: Favor Ayuda con CHECKBOX

Postby VitalJavier » Thu Nov 08, 2018 7:21 pm

Yo lo tendria asi :

Code: Select all  Expand view

PRIVATE Per_agr1,Per_mod1,Per_eli1,Per_imp1, Est_usu1, Per_ver1
PRIVATE oPer_agr1,oPer_mod1,oPer_eli1,oPer_imp1, oEst_usu1, oPer_ver1

Est_usu1 := .f.
Per_agr1 := .f.
Per_mod1 := .f.
Per_eli1 := .f.
Per_imp1 := .f.
Per_ver1 := .f.

REDEFINE CHECKBOX oEst_usu1    VAR Est_usu1 ID 122 OF  oDlgEdit ON CHANGE Chek_esta( oDlgEdit)
Redefine CHECKBOX oPer_Agr1    Var Per_Agr1 Id 123 Of oDlgEdit
Redefine CHECKBOX oPer_Mod1   Var Per_mod1 Id 124 Of oDlgEdit
Redefine CHECKBOX oPer_Eli1     Var Per_eli1 Id 125 Of oDlgEdit
Redefine CHECKBOX oPer_Ver1    Var Per_ver1 Id 126 Of oDlgEdit
Redefine CHECKBOX oPer_Imp1    Var Per_imp1 Id 127 Of oDlgEdit

Static Function Chek_esta()
    If Est_usu1
         Per_agr1 := .T.
         Per_mod1 := .T.
         Per_eli1 := .T.
         Per_imp1 := .T.
         Per_Ver1 := .T.
    Else
         Per_agr1 := .F.
         Per_mod1 := .F.
         Per_eli1 := .F.
         Per_imp1 := .F.
         Per_Ver1 := .F.
    Endif
   oPer_agr1:Refresh()
   oPer_mod1:Refresh()
   oPer_eli1:Refresh()
   oPer_imp1:Refresh()
   oPer_Ver1:Refresh()
Return nil
 


Ojala te funcione
VitalJavier
 
Posts: 227
Joined: Mon Jun 10, 2013 6:40 pm

Re: Favor Ayuda con CHECKBOX SOLUCIONADO

Postby remtec » Fri Nov 09, 2018 12:04 am

Amigo VitalJavier

Muy buenas tardes.

Muchas gracias por haberte tomado la molestia de ayudarme, al igual que Armando y Cesar.

Probe tu modificacion del Codigo y funciono PERFECTO.

Muchos Saludos.

Antonio.
FWH 22.10 - HARBOUR - PELLES C
remtec
 
Posts: 717
Joined: Fri May 12, 2017 2:50 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 83 guests