Implementando una Clase TExplorerBar propia de FWH

Re: Implementando una Clase TExplorerBar propia de FWH

Postby leandro » Wed Apr 15, 2020 2:22 pm

Tengo otra petición :D

Que la rueda del ratón también desplace el panel.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1681
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Implementando una Clase TExplorerBar propia de FWH

Postby cnavarro » Wed Apr 15, 2020 4:31 pm

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?
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
User avatar
cnavarro
 
Posts: 6549
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Implementando una Clase TExplorerBar propia de FWH

Postby pacotre » Wed Apr 15, 2020 5:48 pm

CMBIADO DE LUGAR
Last edited by pacotre on Wed Apr 15, 2020 10:16 pm, edited 1 time in total.
pacotre
 
Posts: 40
Joined: Fri Jan 10, 2014 10:38 am

Re: Implementando una Clase TExplorerBar propia de FWH

Postby leandro » Wed Apr 15, 2020 7:17 pm

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
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1681
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Implementando una Clase TExplorerBar propia de FWH

Postby pacotre » Wed Apr 15, 2020 10:20 pm

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
pacotre
 
Posts: 40
Joined: Fri Jan 10, 2014 10:38 am

Re: Implementando una Clase TExplorerBar propia de FWH

Postby Antonio Linares » Thu Apr 16, 2020 7:44 am

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 :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42148
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Implementando una Clase TExplorerBar propia de FWH

Postby pacotre » Fri Apr 17, 2020 9:23 am

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.
pacotre
 
Posts: 40
Joined: Fri Jan 10, 2014 10:38 am

Re: Implementando una Clase TExplorerBar propia de FWH

Postby pacotre » Fri May 15, 2020 12:26 pm

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
pacotre
 
Posts: 40
Joined: Fri Jan 10, 2014 10:38 am

Re: Implementando una Clase TExplorerBar propia de FWH

Postby pacotre » Sat May 16, 2020 10:15 am

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.
Last edited by pacotre on Sat May 16, 2020 10:35 am, edited 1 time in total.
pacotre
 
Posts: 40
Joined: Fri Jan 10, 2014 10:38 am

Re: Implementando una Clase TExplorerBar propia de FWH

Postby Antonio Linares » Sat May 16, 2020 10:28 am

Paco,

muy bien

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

muchas gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42148
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Implementando una Clase TExplorerBar propia de FWH

Postby pacotre » Sat May 16, 2020 10:37 am

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
Last edited by pacotre on Sat May 16, 2020 12:27 pm, edited 2 times in total.
pacotre
 
Posts: 40
Joined: Fri Jan 10, 2014 10:38 am

Re: Implementando una Clase TExplorerBar propia de FWH

Postby cnavarro » Sat May 16, 2020 11:53 am

El enlace al video no me funciona
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
User avatar
cnavarro
 
Posts: 6549
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Implementando una Clase TExplorerBar propia de FWH

Postby pacotre » Sat May 16, 2020 12:27 pm

Prueba ahora
pacotre
 
Posts: 40
Joined: Fri Jan 10, 2014 10:38 am

Previous

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 77 guests