Page 4 of 4

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Wed Apr 15, 2020 2:22 pm
by leandro
Tengo otra petición :D

Que la rueda del ratón también desplace el panel.

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Wed Apr 15, 2020 4:31 pm
by cnavarro
leandro wrote:Tengo otra petición :D

Que la rueda del ratón también desplace el panel.


Supongo que te funcionó lo de ajustar el primer panel al top del TExplorerBar, no?

Quieres decir que tienes más paneles de los que caben en el TExplorerBar y quieres actuar sobre el scroll con el ratón?

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Wed Apr 15, 2020 5:48 pm
by pacotre
CMBIADO DE LUGAR

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Wed Apr 15, 2020 7:17 pm
by leandro
Cristobal, gracias por responder.
Supongo que te funcionó lo de ajustar el primer panel al top del TExplorerBar, no?

Si funciono super :D
Quieres decir que tienes más paneles de los que caben en el TExplorerBar y quieres actuar sobre el scroll con el ratón?

Exactamente

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Wed Apr 15, 2020 10:20 pm
by pacotre
Antonio Linares wrote:Puedes proporcionar un PRG ejemplo pequeño y autocontenido de como lo estás haciendo ?
oExBar:nTopColor := FONDODIAL2
oExBar:nBottomColor :=FONDODIAL2

oPanel1 = oExBar:AddPanel( "Informes", "MALETIN" )

opanel1:SetColor(letras,fondo)
oPanel1:AddLink("Vistas_I",bClick, )
oPanel1:AddLink("Imprimir_I",bclick, )
oPanel1:AddLink("Listados_I",bclick, )
oPanel1:AddLink("Seguimiento",bclick, )
oPanel1:AddLink( "Incorporar pdfs",bclick, )
oPanel1:AddLink( "Elementos Codif.",bClick, )
oPanel1:AddLink("Config Impresion",bclick, )

activate.... oExBar:CloseAll(0)

method:
METHOD CloseAll( nOpen ) CLASS TExplorerBar

local nPanel, nItem

*DEFAULT nOpen := 1

for nPanel := nOpen + 1 to Len( ::aPanels )
with object ::aPanels[ nPanel ]
:lCollapsed = .T.
:nTopMargin = 1
:nLeftMargin = ::aPanels[ 3 ]:nLeftMargin-5
:nRightMargin = ::aPanels[ 3 ]:nRightMargin+6
:nLeft = :nLeftMargin
:nRight = ::oWnd:nWidth - :nRightMargin
:nHeight = :nTitleHeight
end
for nItem := nPanel + 1 To Len( ::aPanels )
::aPanels[ nItem ]:nTop -= ( ::aPanels[ nPanel ]:nBodyHeight )
next
next

return nil
gracias

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Thu Apr 16, 2020 7:44 am
by Antonio Linares
Paco,

Ese PRG no está completo y no se puede compilar tal cual está.

Para poder dar soporte técnico, necesitamos que nos ayudeis de esa forma :-)

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Fri Apr 17, 2020 9:23 am
by pacotre
Buenos dias Antonio:
He encontrado la forma más práctica de resolverlo y me ha quedado muy bien. Consiste solo en meterle espacios por la izquierda a los bitmaps:

oPanel1 = oExBar:AddPanel( "Informes", "CASE" )

El bitmap "CASE" por ejemplo lo he desplazado a la derecha, dejando más espacio transparente la izquierda. Ahora, aunque esté cortando sólo corta espacio en blanco, por lo que el bitmap se ve más a la izquierda, pero no cortado, y por tanto no quedan restos al refrescar la ventana con todos cerrados. Creo que es una forma fácil y rápida de darle solución.
Gracias. De momento me doy por satisfecho. La verdad es que el cambio de menús antiguos a éste de Texplorer es una pasada.

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Fri May 15, 2020 12:26 pm
by pacotre
Hola amigos:
Tengo un pequeño problemilla con Texplorer. En general me va muy bien, pero he observado un problema que no sé por donde meterle mano. Se trata de Scroll Vertical.
Si muevo la barra de Scroll, sin problemas.
Si pincho abajo, fuera de la barra, se desplaza todo y sin problemas, moviendo de nuevo la barra hacia arriba todo vuelve a la normalidad, pero si cuando la barra está abajo se me ocurre pinchar arriba, fuera de la barra con el fin de que vuelva todo arriba se monta el cirio. El menú se pierde por arriba, siendo el primero visible el que puede ser el cuarto o el quinto, pero ya no ha forma de que aparezca la primera opción del menú.
Voy a procurar subir imágenes. A ver si lo consigo:

Primera imagen muestra el arranque de la aplicación. Todo normal. La barra está arriba y el menú arriba.

Image



Segunda imagen. Bajamos la barra y todo normal. Si arrastramos la barra hacia arriba todo vuelve a la normalidad
Image


El problema surge cuando en lugar de arrastrar la barra pincho por encima o por abajo de la barra.

Image

En este video se puede apreciar el descontrol entre la posición de la barra y la posición de las opciones del menú.
https://vimeo.com/user105544909/review/418912297/010f8be861



Observad donde está la barra y donde aparece la primera opción del menú. Ya se ha desconfigurado todo y no hay forma de recuperar el menu completo. La barra está arriba y el menú abajo

Qué estoy haciendo mal. Me podeis ayudar?

Gracias

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Sat May 16, 2020 10:15 am
by pacotre
Buenos dias:
Pues he dado una solución a este problema. No sé si es la más ortodoxa, pero a mi me vale:


::oVScroll:bGoUp = {|| ::VScrollSkip( - 10 ) }
::oVScroll:bGoDown = {|| ::VScrollSkip( 10 ) }

// ::oVScroll:bPageUp = {|| ::VScrollSkip( - ::oVScroll:nPgStep ) }
// ::oVScroll:bPageDown = {|| ::VScrollSkip( ::oVScroll:nPgStep ) }

::oVScroll:bPos = {|nPos| ::VScrollSetPos( nPos ) }
::oVScroll:bTrack = {|nPos| ::VScrollSetPos( nPos ) }

Como veis, he comentado esas dos líneas y el efecto es que se mueve la barra, pero no el menú. Si ahora pinchas sobre la barra el menú se desplaza al punto de la barra, pero no se descoloca. Al desplazar la barra Scroll todo funciona perfectamente.

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Sat May 16, 2020 10:28 am
by Antonio Linares
Paco,

muy bien

Puedes proporcionar un ejemplo completo para que otros usarios puedan usarlo ?

muchas gracias

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Sat May 16, 2020 10:37 am
by pacotre
En mi anterior post hay un video con el efecto erróneo.
Ahora subo uno como ha quedado. Solo hay que anular esas dos líneas.

https://vimeo.com/419249741

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Sat May 16, 2020 11:53 am
by cnavarro
El enlace al video no me funciona

Re: Implementando una Clase TExplorerBar propia de FWH

PostPosted: Sat May 16, 2020 12:27 pm
by pacotre
Prueba ahora