In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Scroll sobre un folderpage

Foro público de Xailer en español
User avatar
Carlos Ortiz
Posts: 846
Joined: Wed Jul 01, 2009 5:44 pm
Location: Argentina - Córdoba
Contact:

Scroll sobre un folderpage

Postby Carlos Ortiz » Fri Oct 20, 2017 5:32 am

Resulta que en un form tengo un folder con un folderpage vacío, este folderpage se llena en tiempo de ejecución con una serie de controles en un orden que el usuario configura en una tabla, si el primer control donde se posiciona el cursor es un edit o un check o un radio al hacer scroll con el mouse el folder hacer scroll sin problemas mostrando los controles para abajo y para arriba pero si cae en un combo o un memoedit no hace scroll se queda en ese control y no sube ni baja, esto es asi o se puede alterar para que esos 2 controles se comporten como los otros con respecto al scroll del mouse

Probé varias cosas y no estoy pudiendo hacerlo, sera que tengo que tocar la clase tCombobox?

Gracias
@dbfarma
www.dbfarma.com.ar
User avatar
jfgimenez
Site Admin
Posts: 5620
Joined: Mon Apr 06, 2015 8:48 pm
Contact:

Re: Scroll sobre un folderpage

Postby jfgimenez » Sat Oct 21, 2017 8:13 pm

Carlos,

Normalmente, el scroll con la rueda del ratón actúa sobre el control que tiene el foco. En Win10 se cambió ese comportamiento, y ahora por defecto actúa sobre el control que esté justo debajo del puntero del ratón. No obstante, ese comportamiento se puede cambiar desde el panel de control de windows.

En cualquier caso, los mensajes de scroll los recibe un control determinado, y si ese control no los procesa, los reenvía a su control contenedor. Por esa razón, si quien recibe esos mensajes es un TEdit o un TCheckbox, se reenvían al contenedor, en este caso el folder, y se hace scroll en la página que tengas activa. Pero en el caso de TMemo y TCombobox, son esos mismos controles los que procesan los mensajes de scroll, y no se reenvían al contenedor, lo cual es completamente lógico. Por lo tanto, me temo que no hay nada que hacer.
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
User avatar
Carlos Ortiz
Posts: 846
Joined: Wed Jul 01, 2009 5:44 pm
Location: Argentina - Córdoba
Contact:

Re: Scroll sobre un folderpage

Postby Carlos Ortiz » Sat Oct 21, 2017 8:46 pm

y como podría hacer para que esos 2 controles se comporten como los tEdit (con lExtendedui al combobox le cancele el scroll al hacer girar el scroll del mouse) pero no se como hacer lo otro, gracias josé!
@dbfarma
www.dbfarma.com.ar
User avatar
jfgimenez
Site Admin
Posts: 5620
Joined: Mon Apr 06, 2015 8:48 pm
Contact:

Re: Scroll sobre un folderpage

Postby jfgimenez » Sat Oct 21, 2017 9:04 pm

Carlos,

prueba a sobrecargar la clase, y añadir el método:

Code: Select all

METHOD WMMouseWheel( nWParam, nLParam ) INLINE ::oParent:WMMouseWheel( nWParam, nLParam ), 0

Aunque no lo he probado y no sé si funcionará.
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
User avatar
Carlos Ortiz
Posts: 846
Joined: Wed Jul 01, 2009 5:44 pm
Location: Argentina - Córdoba
Contact:

Re: Scroll sobre un folderpage

Postby Carlos Ortiz » Sun Oct 22, 2017 1:07 am

Funciona y hace lo que quiero, ahora por mas que el cursor se detenga en cualquier control si hay barras de scroll hace scroll en el contenedor! Gracias José una vez mas te debo una cerveza!
@dbfarma
www.dbfarma.com.ar
User avatar
bingen
Posts: 397
Joined: Mon Jul 07, 2014 8:17 pm
Location: Bilbao
Contact:

Re: Scroll sobre un folderpage

Postby bingen » Mon Oct 23, 2017 12:16 pm

Ojo si el ComboBox esta dentrp de un GroupBox encima del folderpaga falla a no ser que también sobrecargues


CLASS tGroupBox FROM xGroupBox
METHOD WMMouseWheel( nWParam, nLParam ) INLINE ::oParent:WMMouseWheel( nWParam, nLParam )
ENDCLASS

Salu2
BiSoft Desarrollo de software profesional
http://www.bisoft.es
User avatar
Carlos Ortiz
Posts: 846
Joined: Wed Jul 01, 2009 5:44 pm
Location: Argentina - Córdoba
Contact:

Re: Scroll sobre un folderpage

Postby Carlos Ortiz » Mon Oct 23, 2017 7:17 pm

Ok, gracias por la aclaración!
@dbfarma
www.dbfarma.com.ar

Return to “Spanish”