FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Desabilitar botones de TOutlook2003 ( Solucionado )
Posts: 625
Joined: Wed Mar 14, 2007 06:49 PM
Desabilitar botones de TOutlook2003 ( Solucionado )
Posted: Sat Jan 11, 2020 05:25 PM
Saludos a todos, les deseo un excelente inicio de año, estoy trabajando en un proyectito y estoy ocupando la clase TOutlook2003, va bien pero necesito deshabilitar uno o más botones. Ya estuve probando pero no doy como hacerlo.

También necesitaba que se desabilitara el menú que aparece en el último botón al hacer click, pero eso ya quedó, me atrase con la deshabilitacion de botones.

Algún ejemplo de como lograrlo?

Saludos y gracias de antemano..

Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
Posts: 625
Joined: Wed Mar 14, 2007 06:49 PM
Re: Desabilitar botones de TOutlook2003
Posted: Mon Jan 13, 2020 12:05 AM

Maestro Antonio Linares:

Alguna sugerencia? :oops: :oops:

Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Desabilitar botones de TOutlook2003
Posted: Mon Jan 13, 2020 07:47 AM

Victor,

El método SetOption( nOption ) CLASS TOutLook2003 evalúa bChange recibiendo los parámetros nOption y nOldOption

desde el código de bChange puedes comprobar si nOption esta activo ó no y así ejecutar ó no la acción

Para guardar el estado de cada botón puedes modificar la clase TOutLook2003Group y añadirle una DATA lEnabled

Pruébalo asi

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 625
Joined: Wed Mar 14, 2007 06:49 PM
Re: Desabilitar botones de TOutlook2003
Posted: Fri Jan 17, 2020 03:33 AM

Maestro buenas noches:

Estuve revisando la clase y modificando la sin tener éxito, ya que al agregar la data lEnable no respeta que se deshabilite el grupo botón, al pasar el puntero del mouse sobre los botones reinicia y habilita el botón haciendo posible lanzar de nuevo la acción asociada.

Por lo que entendí en la clase el botón es dibujando como groupbox y actualizado en el método paint en tiempo de ejecución, imposibilitando poder deshabilitar uno o varios botones.

Que otra forma de puede lograr deshabilitar uno o varios botones?

Gracias

Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Desabilitar botones de TOutlook2003
Posted: Fri Jan 17, 2020 10:04 AM
Victor,

Modifica el método AtGroup() así:

Code (fw): Select all Collapse
METHOD AtGroup( nRow, nCol ) CLASS TOutLook2003

   local nGroupsArea := ::nHeight - ( Len( ::aGroups ) * 32 )
   local nGroup

   if nRow > nGroupsArea
      nGroup = Len( ::aGroups ) - Int( ( ::nHeight - nRow ) / 32 )
      if ::aGroups[ nGroup ]:lEnabled
         return nGroup 
      endif  
   endif

return nil


Añade esta DATA en la clase TOutLook2003Group
DATA lEnabled INIT .T.

y en tu código haz esto:
oOutLook2003:aGroups[ 2 ]:lEnabled = .F.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 625
Joined: Wed Mar 14, 2007 06:49 PM
Re: Desabilitar botones de TOutlook2003
Posted: Fri Jan 17, 2020 02:27 PM

Excelente Maestro:

Funciona al 100, lo estaba modificando en otro lugar por eso no quedaba, gracias como siempre maestraso. Genial.. saludos :mrgreen:

Soluciones y Diseño de Software
Damos Soluciones...

I.S.C. Victor Daniel Cuatecatl Leon
Director y Diseñador de Proyectos

http://www.soldisoft.unlugar.com
http://www.sisa.unlugar.com
danyleon82@hotmail.com
www.facebook.com/victordaniel.cuatecatlleon

Continue the discussion