Prezados,
Como posso saber se o mouse está ou não sobre um determinado componente (no
meu caso o componente TPanel)... Tentei usando o evento "onmousemove" até
funciona, mas, somente executa se o mouse está sobre, mas, preciso saber
também se não está sobre o componente...
Obrigado pela atenção,
Reginaldo
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.
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.
Saber se o mouse está ou não SOBRE o componente
Saber se o mouse está ou não SOBRE o componente
Reginaldo,
hazlo así:
CLASS TPanel FROM XPanel
RESERVED:
METHOD WMMouseMove( nWParam, nLParam )
METHOD WMMouseLeave( nWParam, nLParam )
ENDCLASS
METHOD WMMouseMove( nWParam, nLParam ) CLASS TPanel
LogDebug( "Estamos dentro" )
/* Esta funcion hace que al salir el puntero del
ratón del área del panel se dispare WMMouseLeave()
*/
TrackMouseEvent( ::Handle, TME_LEAVE )
RETURN Super:WMMouseMove( nWParam, nLParam )
METHOD WMMouseLeave( nWParam, nLParam ) CLASS TPanel
LogDebug( "Y ahora fuera" )
RETURN Nil
Saludos,
José Lalín
hazlo así:
CLASS TPanel FROM XPanel
RESERVED:
METHOD WMMouseMove( nWParam, nLParam )
METHOD WMMouseLeave( nWParam, nLParam )
ENDCLASS
METHOD WMMouseMove( nWParam, nLParam ) CLASS TPanel
LogDebug( "Estamos dentro" )
/* Esta funcion hace que al salir el puntero del
ratón del área del panel se dispare WMMouseLeave()
*/
TrackMouseEvent( ::Handle, TME_LEAVE )
RETURN Super:WMMouseMove( nWParam, nLParam )
METHOD WMMouseLeave( nWParam, nLParam ) CLASS TPanel
LogDebug( "Y ahora fuera" )
RETURN Nil
Saludos,
José Lalín
Saber se o mouse está ou não SOBRE o componente
Caro José Lalín,
Vou testar sua solução e posto o resultado...
Obrigado pela atenção,
Reginaldo
"José Lalín" <dezac@corevia.com> escreveu na notícia da
mensagem:4e57ea92$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Reginaldo,
>
> hazlo así:
>
> CLASS TPanel FROM XPanel
>
> RESERVED:
> METHOD WMMouseMove( nWParam, nLParam )
> METHOD WMMouseLeave( nWParam, nLParam )
>
> ENDCLASS
>
> METHOD WMMouseMove( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Estamos dentro" )
> /* Esta funcion hace que al salir el puntero del
> ratón del área del panel se dispare WMMouseLeave()
> */
> TrackMouseEvent( ::Handle, TME_LEAVE )
>
> RETURN Super:WMMouseMove( nWParam, nLParam )
>
> METHOD WMMouseLeave( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Y ahora fuera" )
>
> RETURN Nil
>
>
> Saludos,
> José Lalín
>
Vou testar sua solução e posto o resultado...
Obrigado pela atenção,
Reginaldo
"José Lalín" <dezac@corevia.com> escreveu na notícia da
mensagem:4e57ea92$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Reginaldo,
>
> hazlo así:
>
> CLASS TPanel FROM XPanel
>
> RESERVED:
> METHOD WMMouseMove( nWParam, nLParam )
> METHOD WMMouseLeave( nWParam, nLParam )
>
> ENDCLASS
>
> METHOD WMMouseMove( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Estamos dentro" )
> /* Esta funcion hace que al salir el puntero del
> ratón del área del panel se dispare WMMouseLeave()
> */
> TrackMouseEvent( ::Handle, TME_LEAVE )
>
> RETURN Super:WMMouseMove( nWParam, nLParam )
>
> METHOD WMMouseLeave( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Y ahora fuera" )
>
> RETURN Nil
>
>
> Saludos,
> José Lalín
>
Saber se o mouse está ou não SOBRE o componente
Caro José Lalín,
Obrigado mais uma vez. Funcionou perfeitamente...
Só tive que adicionar o evento "onMouseLeave"...
Obrigado
Reginaldo
"José Lalín" <dezac@corevia.com> escreveu na notícia da
mensagem:4e57ea92$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Reginaldo,
>
> hazlo así:
>
> CLASS TPanel FROM XPanel
>
> RESERVED:
> METHOD WMMouseMove( nWParam, nLParam )
> METHOD WMMouseLeave( nWParam, nLParam )
>
> ENDCLASS
>
> METHOD WMMouseMove( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Estamos dentro" )
> /* Esta funcion hace que al salir el puntero del
> ratón del área del panel se dispare WMMouseLeave()
> */
> TrackMouseEvent( ::Handle, TME_LEAVE )
>
> RETURN Super:WMMouseMove( nWParam, nLParam )
>
> METHOD WMMouseLeave( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Y ahora fuera" )
>
> RETURN Nil
>
>
> Saludos,
> José Lalín
>
Obrigado mais uma vez. Funcionou perfeitamente...
Só tive que adicionar o evento "onMouseLeave"...
Obrigado
Reginaldo
"José Lalín" <dezac@corevia.com> escreveu na notícia da
mensagem:4e57ea92$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Reginaldo,
>
> hazlo así:
>
> CLASS TPanel FROM XPanel
>
> RESERVED:
> METHOD WMMouseMove( nWParam, nLParam )
> METHOD WMMouseLeave( nWParam, nLParam )
>
> ENDCLASS
>
> METHOD WMMouseMove( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Estamos dentro" )
> /* Esta funcion hace que al salir el puntero del
> ratón del área del panel se dispare WMMouseLeave()
> */
> TrackMouseEvent( ::Handle, TME_LEAVE )
>
> RETURN Super:WMMouseMove( nWParam, nLParam )
>
> METHOD WMMouseLeave( nWParam, nLParam ) CLASS TPanel
>
> LogDebug( "Y ahora fuera" )
>
> RETURN Nil
>
>
> Saludos,
> José Lalín
>
Saber se o mouse está ou não SOBRE o componente
Reginaldo,
> Obrigado mais uma vez. Funcionou perfeitamente...
> Só tive que adicionar o evento "onMouseLeave"...
Un placer
Saludos,
José Lalín
> Obrigado mais uma vez. Funcionou perfeitamente...
> Só tive que adicionar o evento "onMouseLeave"...
Un placer

Saludos,
José Lalín