Ejemplos usando el Api de windows para Visual basic

150 - Limitar el área del movimiento del mouse

Volver al Listado Api - Anterior - Siguiente



 

 

Contenido:

 

 

 

 

 


Ejemplo 1

Ejemplo que utiliza el api ClipCursor para especificar el área rectangular de desplazamiento del puntero del mouse

Esta función lleva como parámetro una estructura Rect , esta estructura determina el área rectangular de la pantalla en la cual el puntero podrá moverse.

 

Por ejemplo si enviamos lo siguiente:

 

 

Area.left = 0
Area.top = 0
Area.right = 100
Area.bottom = 100

Call ClipCursor(Area)

 

..el mouse solo podrá moverse en el rectángulo especificado, es decir desde la esquina superior izquierda hasta 100 pixeles como ancho y 100 pixeles como alto ( de la pantalla )

El siguiente ejemplo no sirve para nada en concreto , solo muestra su uso, limitando el área de movimiento al rectángulo del formulario.

Un uso que se me ocurre para poder usarlo con un propósito específico podría ser por ejemplo para implementar un Splitter, de modo que al mover el separador, y si el mouse se sale del área correspondiente al desplazar el splitter , bloquearlo a dicho rectángulo, como lo hacen muchas aplicaciones

Nota Importante: Una ves que se descarga el programa o se le pasa el control a otra alpicación , para reestablecer el área de movimiento para que pueda moverse en toda la pantalla, hay que pasar un valor Null al Api ClipCursor. si no se hace esto, el mouse quedará limitado a dicha área, y hasta que no se vuelva a llamar a la función pasandole un valor Null, no se reestablecerá.

 

Al formulario especificarle en la propeidad Moveable el valor False

Pegar esto en el Formulario:

 

En este enlace hay otro ejemplo que usa la función ClipCursor para limitar el puntero del mouse al hacer un arrastre de controles


Ejemplo 2

En este otro ejemplo se muestra como limitar el puntero al área cliente de cualquier ventana.

Hay una función de ajuste a la cual se le debe enviar el hwnd.

Colocar en el form :

Código fuente en un módulo bas

 

Código fuente en el formulario

 


Relacionados

 



Buscar en Recursos vb