FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour TOulook2003/2010 y menu popup
Posts: 211
Joined: Wed Jul 16, 2008 12:59 PM
TOulook2003/2010 y menu popup
Posted: Fri May 29, 2015 01:27 PM

Amigos del foro:

En el control TOulook2003, alguien ha podido hacer funcionar el menu PopUp, para que aparescan Mas/Menos botones.

En el comportamiento clasico de Microsoft OutLook, cuando se elije menos botones, el ultimo boton (el de abajo) aparece minimizado en la parte inferior del control.
Como se puede lograr este efecto??

De antemano, gracias por las respuestas.

Rolando
Cochabamba, Bolivia

Posts: 211
Joined: Wed Jul 16, 2008 12:59 PM
Re: TOulook2003/2010 y menu popup
Posted: Fri May 29, 2015 04:02 PM
Parece que nadie hizo mejoras a la clase.

Yo hice varias, y para darle la funcionalidad mencionada, estoy haciendo lo siguiente:

1ro. Voy a dejar un espacio al final de los botones de grupo (si o si)
(En la clase original habia que colocar un boton de grupo vacio)
2do. En el espacio en blanco coloco un BtnBmp transparente para activar el menu PopUp
(En la clase original el BitMap para mostrar el menu PopUp aparece en el ultimo boton de grupo)

Asi entonces.
Cambie(en todos los lugares posibles):
Code (fw): Select all Collapse
::nHeight -( Len( ::aGroups ) * 32 )

Por:
Code (fw): Select all Collapse
::nHeight - ( (Len( ::aGroups )+1) * 32 )


y Algo similar en el metodo TOutLook2010Group()
Cambie:
Code (fw): Select all Collapse
nTop = oCon:nHeight - ;
           ( ( Len( oCon:aGroups ) + 1 - AScan( oCon:aGroups, { | o | o == Self } ) ) * 32 )

Por:
Code (fw): Select all Collapse
nTop = oCon:nHeight - ;
             ( ( (Len( oCon:aGroups )+1) + 1 - AScan( oCon:aGroups, { | o | o == Self } ) ) * 32 )



En el metodo AtGroup()
Cambie:
Code (fw): Select all Collapse
if nRow > nGroupsArea
    return Len( ::aGroups ) - Int( ( ::nHeight - nRow ) / 32 )

Por:
Code (fw): Select all Collapse
if nRow > nGroupsArea .AND. nRow < ::nHeight - ( 32 )
      return (Len( ::aGroups )+1) - Int( ( ::nHeight - nRow ) / 32 )


Tambien, borre el codigo que en la clase original mostraba el menu PopUp

Hago estos comentarios, por si alguien no esta de acuerdo en dejar un espacio en blanco al final de los botones de grupo.

Espero sus comentarios.

Rolando
Cochabamba, Bolivia

Continue the discussion