Ejemplos usando el Api de windows para Visual basic

47 - Api WindowFromPoint para hacer MouseOut en un Picture o controles con hwnd

<Volver> - Anterior - Siguiente



 

 

 

Contenido

 

 

 

 


Ejemplo 1

El Api WindowFromPoint en conjunto con el Api GetCursorPos, lo que hace es devolver el Handle o Hwnd de una ventana en la que se encuentra el mouse.

El ejemplo muestra como llamando a esta función dentro de un timer, hacer un MouseOut usando un picturebox, ya que se puede determinar si se está encima del control

Cuando se pasa el Mouse por encima del Picture se cambia el color y se dibuja un texto centrado. Para centrar el texto se utiliza las funciones textWidth y Text_Height de Visual Basic.

Cuando se presiona sobre el Picture (MouseDown) , se dibuja otro texto y se cambia el color de fondo, y cuando se produce un MouseOut, es decir que el puntero está fuera del Picture, otro diferente. El procedimiento MouseOut es el que se encuentra dentro del Timer.

El procedimiento que cambia las propiedades del Picture es Dibujar_Picture, y a esta sub le debemos pasar el color de fondo, el texto o caption a mostrar ,el color del texto y el picture al cual aplicar los cambios.

Controles

Agregar un Timer1 y un Picture1.

Código fuente en un formulario:

 


Ejemplo 2

Usar WindowFromPoint para saber si se está sobre un objeto

Este ejemplo es mas simple que el anterior, y lo único que hace es , mediante un timer recuperar el hwnd de la ventana en donde se encuentra el cursor , para saber si se está encima de un objeto.

Nota. También puedes ver en esta página un ejemplo similar a este pero utilizando la función de windows PtlnRect :

Controles

Colocar un control Command Button, un ListBox y un control Timer

Código fuente en el formulario principal.

 


Enlaces relacionados

 



Buscar en Recursos vb