Asunto: Obtener posición del ratón fuera de aplicación
¿Cómo puedo obtener las coordenadas X e Y de la posición del cursor del ratón fuera de una aplicación Delphi?
Me explico: quiero capturar la posición del cursor del ratón e ir guardándola en un control (Memo), manteniendo mi aplicación Delphi minimizada, que valla capturando la posición el cursor esté donde esté (en cualquier otra aplicación).
Publicado:
Mie Nov 26, 2008 1:22 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Obtener posición del ratón fuera de aplicación
Anuncios
varios escribió:
¿Cómo puedo obtener las coordenadas X e Y de la posición del cursor del ratón fuera de una aplicación Delphi?
Me explico: quiero capturar la posición del cursor del ratón e ir guardándola en un control (Memo), manteniendo mi aplicación Delphi minimizada, que valla capturando la posición el cursor esté donde esté (en cualquier otra aplicación).
Para ello puedes utilizar la función "GetCursorPos" de la Unit "Windows", sería algo así:
Código:
...
procedure TformMenuPrincipal.tTemporizadorTimer(Sender: TObject);
var
posicionCursor : TPoint;
begin
tTemporizadorClic.Enabled := false;
if opCapturarBotonIzquierdo.Checked and botonPulsado then
begin
GetCursorPos (posicionCursor);
mCapturas.Lines.Add (inttostr(posicionCursor.X) + ',' +
inttostr(posicionCursor.Y) + ' - Botón izquierdo pulsado');
...
Con esto te capturará la posición del ratón esté donde esté, tanto dentro como fuera de tu aplicación.
Publicado:
Mie Nov 26, 2008 1:25 am
varios Magnífico usuario
Registrado: Oct 10, 2006 Mensajes: 2092
Asunto: Re: Obtener posición del ratón fuera de aplicación
Anuncios
Ok, pongo un Temporizador (TTimer) para que vaya obteniendo la posición cada cierto tiempo.
Otra duda ¿se podría capturar también si el usuario ha pulsado el botón izquierdo, por ejemplo, del ratón? lo que me interesa es obtener la posición del ratón sólo si el usuario ha pulsado el botón izquierdo del ratón.
Publicado:
Mie Nov 26, 2008 1:35 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Obtener posición del ratón fuera de aplicación
Anuncios
varios escribió:
Ok, pongo un Temporizador (TTimer) para que vaya obteniendo la posición cada cierto tiempo.
Otra duda ¿se podría capturar también si el usuario ha pulsado el botón izquierdo, por ejemplo, del ratón? lo que me interesa es obtener la posición del ratón sólo si el usuario ha pulsado el botón izquierdo del ratón.
Sí, para ello puedes utilizar esta otra función, que te devolverá True si el botón izquierdo del ratón ha sido pulsado:
Código:
function botonRatonPulsado (ABtn: integer): boolean;
begin
result := (GetAsyncKeyState(ABtn) and $8000) = $8000;
end;
Publicado:
Mie Nov 26, 2008 1:37 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Obtener posición del ratón fuera de aplicación
Anuncios
En la sección "Descargas" hemos colocado un nuevo programa Open Source realizado en Delphi que obtiene la posición del cursor del ratón, permite obtenerla sólo si se ha pulsado el botón izquierdo o siempre y permite también indicar el intervalo de comprobación. También puedes guardar el resultado de las coordenadas por donde ha ido pasando el cursor del ratón.
Aquí tienes la descarga de la aplicación y el código fuente (gratuito):
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A