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
Responder
Avatar de Usuario
Carlos Ortiz
Mensajes: 872
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Scroll sobre un folderpage

Mensaje por Carlos Ortiz »

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
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5706
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Re: Scroll sobre un folderpage

Mensaje por jfgimenez »

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
Avatar de Usuario
Carlos Ortiz
Mensajes: 872
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Re: Scroll sobre un folderpage

Mensaje por Carlos Ortiz »

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é!
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5706
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Re: Scroll sobre un folderpage

Mensaje por jfgimenez »

Carlos,

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

Código: Seleccionar todo

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
Avatar de Usuario
Carlos Ortiz
Mensajes: 872
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Re: Scroll sobre un folderpage

Mensaje por Carlos Ortiz »

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!
Avatar de Usuario
bingen
Mensajes: 565
Registrado: Lun Jul 07, 2014 8:17 pm
Ubicación: Bilbao
Contactar:

Re: Scroll sobre un folderpage

Mensaje por bingen »

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
Avatar de Usuario
Carlos Ortiz
Mensajes: 872
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Re: Scroll sobre un folderpage

Mensaje por Carlos Ortiz »

Ok, gracias por la aclaración!
Responder