Sección de códigos , trucos y ejemplos para visual basic


23 - Detectar si se hizo Click en cualquier ventana de Windows

<Volver> - Anterior - Siguiente



 

Lo que hace este ejemplo es poder detectar cuando se hizo clic en una ventana cualquiera de Windows.

 

Para el mismo se utilizan estas tres funciones del api de windows

 

Mediante GetForegroundWindow lo que hacemos es recuperar el Hwnd de la ventana activa

Una ves que tenemos el Hwnd, utilizamos GetwindowText para recuperar el Caption de la ventana, es decir el texto de la barra de título

La otra función Api llamada GetAsyncKeyState, nos permite saber cuando hicimos un Click en cualquier lugar de windows, si hicimos click con el botón izquierdo del mouse, el Api devuelve el valor 1, si hicimos click con el botón derecho nos devuelve el valor 2, los demás valores que puede devolver esta función son los valores que corresponden a los números de los códigos de las teclas, es decir no solo devuelve un valor para el mouse si no también para el teclado, pero en este ejemplo solo se consulta dentro de un timer si devuelve el valor 1, es decir si hicimos un clic

 

Cuando se produce un clic, se imprime el título de la ventana en el formulario, por ejemplo :

 

vista del formulario con los caption de la ventanas de windows en las que se hicieron clic

 

 

Controles

En un Formulario colocar un control Timer con el interval en 100 o a gusto pero inferior al segundo.

 

Código fuente en un Form

 



Buscar en Recursos vb