Gonduana

Contenidos para traductores

  • Blog
  • Empieza por aquí
    • Encuesta: coger
    • Encuesta: ratón o mouse
    • Artículos más leídos
    • Vídeos más vistos
    • Gonduana en las redes sociales
    • ¿Quieres saber más sobre mí?
  • Recursos
    • Software para traductores
    • Hardware para traductores
    • Internet para traductores
    • WordPress para traductores
  • Servicios
  • Sobre mí
  • Contacto

¿Quieres controlar el ratón con AutoHotkey?

Publicado el 27/septiembre/2015 por Jesús Prieto

Share on twitter
Share on linkedin
Share on facebook
Share on google
Share on pocket

Control del ratón con AutoHotkeySiempre con la idea de tener siempre afilada tu herramienta de trabajo, según lo vimos en la fábula de los leñadores, hoy vamos a ver cómo controlar el ratón con AutoHotkey.

Como siempre, te daré casos prácticos para partir de un punto inicial y así puedas imaginarte tú cómo lo puedes hacer…

Índice

  • Control del ratón con AutoHotkey
    • 1.ª idea básica: saber las coordenadas del ratón
    • 2.ª idea básica: colocar el ratón en unas coordenadas determinadas
    • 3.ª idea básica: haz clic, clic, clic…
  • Conclusiones del control del ratón con AutoHotkey

Control del ratón con AutoHotkey

1.ª idea básica: saber las coordenadas del ratón

Para saber las coordenadas del ratón, se emplea la función MouseGetPos. Por ejemplo, el siguiente código mostrará un cuadro de diálogo (función MsgBox) con las coordenadas horizontal (xpos) y vertical (ypos) del ratón.

; WIN+CTRL+ñ (macro 1A)
; Muestra las coordenadas del ratón 
; respecto a la ventana activa
; https://www.gonduana.com/controla-el-raton-con-autohotkey/
#^ñ::
	MouseGetPos, xpos, ypos
	Msgbox, Coordenada X=%xpos%. Coordenada Y=%ypos%.
Return

Atención: son las coordenadas del ratón en píxeles respecto a la ventana activa, no respecto a la pantalla de tu monitor.

La macro se ejecuta al pulsar simultáneamente las teclas WINDOWS + CTRL+Ñ.

Si queremos saber las coordenadas respecto a la pantalla, emplearemos la función CoordMode, como en la siguiente macro:

; WIN+CTRL+ñ (macro 1B)
; Muestra las coordenadas del ratón 
; respecto a la pantalla
; https://www.gonduana.com/controla-el-raton-con-autohotkey/
#^ñ::
	CoordMode, Mouse, Screen  
	MouseGetPos, xpos, ypos
	Msgbox, Coordenada X=%xpos%. Coordenada Y=%ypos%.
Return

Por si no se entienden bien las coordenadas absolutas (respecto a la pantalla) y las coordenadas relativas (respecto a la ventana), la siguiente imagen animada lo explica fenomenal (Made in Myself):

referencias relativas o absolutas - animado

Recuerda que según el sistema cartesiano, el primer número es la coordenada horizontal, y después de la coma viene la coordenada vertical.

El origen de coordenadas está en la esquina superior izquierda de la pantalla, y la coordenada vertical crece hacia abajo.

2.ª idea básica: colocar el ratón en unas coordenadas determinadas

También es posible colocar el ratón en una determinada posición, sin moverlo físicamente con la mano, parece magia…

Por ejemplo, la siguiente macro emplea la función MouseMove para colocar el cursor del ratón en las coordenadas (100, 160) respecto a la ventana activa al pulsar simultáneamente las teclas ALT y ESPACIO.

; ALT+ESPACIO (macro 2A)
; Sitúa el ratón en las coordenadas (100,200)
; respecto a la ventana activa
; https://www.gonduana.com/controla-el-raton-con-autohotkey/
~!Space::
	CoordMode, Mouse, Window
	MouseMove, 100, 160, R
return

La virgulilla (~) antes de la abreviatura hace que, aparte de ejecutarse las dos líneas que se ven de la macro, se envía al sistema la abreviatura que ejecuta la macro, en este caso, ALT+ESPACIO. Esta combinación de teclas de Windows, hace que se muestre un menú para poder minimizar, maximizar, restaurar, cambiar el tamaño o cerrar la ventana activa. ¡Pruébalo!

Por tanto, lo que hace la anterior macro es:

  1. mostrar el menú;
  2. colocar el ratón dentro de ese menú, para hacer más rápidamente la operación que quieres.

También podemos colocar el ratón con diferencias respecto a la posición actual del puntero. Por ejemplo, si ejecutas la siguiente macro:

; WIN+CTRL+ñ (macro 2B)
; Desplaza el cursor 10 píxeles a la derecha y
; 15 píxeles hacia abajo
; https://www.gonduana.com/controla-el-raton-con-autohotkey/
#^ñ::MouseMove, 10, 15, 0, R

el cursor se moverá 10 píxeles a la derecha, y 15 hacia abajo.

Pruébalo: cada vez que pulses WIN+CTRL+Ñ, el cursor se desplazará los píxeles que hayas escrito en la macro.

Fíjate que como solo tenemos una línea de código (MouseMove), podemos ponerlo en la misma línea que la abreviatura, y sin return, como las macros anteriores.

Otro caso práctico que utilizo:

Si viste el artículo Traducir con dos monitores, ya sabes que trabajo con 2 monitores dispuestos uno al lado del otro. Cada monitor tiene una resolución de 1920 × 1080 píxeles.

Pues bien, cuando quiero llevar el cursor del ratón de un monitor a otro, lo consigo rápidamente con la siguiente macro:

; WIN+CTRL+ñ (macro 2C)
; Cambia el cursor de pantalla.
; Mueve el cursor 1920 píxeles a la derecha/izquierda
; https://www.gonduana.com/controla-el-raton-con-autohotkey/
#^ñ::
	CoordMode, Mouse, Screen  
	MouseGetPos, xpos, ypos
	;Msgbox, X=%xpos% Y=%ypos%.

	if xpos > 1920
		difX := - 1920
	else
		difX := 1920
	MouseMove, %difX%, 0, 0, R
	; Presiona la tecla CTRL
	Send {Ctrl down}
	Sleep 50 
	; Libera la tecla CTRL
	; para ver círculos concéntricos
	Send {Ctrl up}
Return

Gráficamente, esto es lo que hace la macro si se ejecutara cada dos segundos y no se moviera el ratón con la mano:

Movimiento del ratón con AutoHotkey entre pantallas - animado

Primero, la función MouseGetPos consigue las coordenadas del cursor respecto a la pantalla.

Después, si el cursor está en el monitor izquierdo (xpos < 1920), asigno a la variable difX el valor 1920.

Si el cursor está en el monitor derecho (xpos > 1920), asigno a la variable difX un valor negativo de -1920.

Fíjate que 1920 es el ancho en píxeles de cada uno de mis monitores, así que al posicionar el cursor del ratón con la función MouseMove, lo que consigo es llevármelo al otro monitor.

Las líneas 15 a 20 no son necesarias, pero las dejo para dejar la más a mi gusto.

Te explico porqué:

Lo que hace el primer Send de la línea 16 es presionar la tecla CTRL; luego la macro espera 50 milisegundos antes de levantar la tecla CTRL con otra función Send.

¿Para qué todo esto?

Porque en la configuración del ratón de Windows en Panel de control > Mouse > Opciones de puntero, tengo marcada la casilla Mostrar la ubicación del puntero al presionar la tecla CTRL.

Propiedades - Mouse - Opciones de puntero

Tengo marcada esa casilla, porque a veces no veo el puntero en ninguno de los dos monitores. Siempre que me pasa, pulso la tecla CTRL y me aparecen unos círculos concéntricos en la posición del ratón, así lo localizo enseguida.

Pues bien, al mover el ratón de un monitor al otro, los círculos concéntricos me ayudan a ubicar rápidamente el ratón.

Ya digo: si no lo ves interesante, siempre puedes quitar estas últimas líneas…

Nota: en el próximo artículo, te desvelaré cómo ejecuto en realidad esta macro, que no es realmente con WIN+CTRL+Ñ.

3.ª idea básica: haz clic, clic, clic…

Con AutoHotkey también puedes hacer clic en las coordenadas que quieras.

Por ejemplo, la siguiente macro hará clic en las coordenadas (790, 876) relativas a la ventana activa.

; WIN+CTRL+ñ (macro 3A)
; Hace clic en las coordenadas (790, 876)
; https://www.gonduana.com/controla-el-raton-con-autohotkey/
#^ñ::Click 790, 876

Como te puedes imaginar, la función de AutoHotkey que nos sirve para hacer clic es Click.

Por si te lo estás preguntando: ¡sí, también se puede hacer clic con el botón derecho!:

; WIN+CTRL+ñ  (macro 3B)
; Hace clic derecho en icono de altavoz de la 
; Bandeja del sistema, y luego hace clic
; en un elemento del menú
; https://www.gonduana.com/controla-el-raton-con-autohotkey/
#^ñ::
	CoordMode, Mouse, Screen
	; Clic derecho en el icono de altavoz
	Click right 1869, 1022
	Sleep 100
	; Clic en Abrir mezclador de volumen
	Click 1790, 876
Return

Esta macro, por ejemplo, te puede servir para hacer clic con el botón derecho del ratón en un icono de la Bandeja del sistema, y luego hacer clic en un elemento del menú contextual mostrado.

En la siguiente imagen, tienes el ejemplo para abrir el Mezclador de volumen (icono de altavoz) solo con AutoHotkey:

Ejemplo de abrir el mezclador de volumen

Ten en cuenta que cualquier operación breve, pero que haces muchas veces al cabo del día, puede interesarte automatizarla creando una macro de AutoHotkey.

Por si no lo sabías, en AutoHotkey se incluye una herramienta que te puede ayudar a saber las coordenadas del ratón en tiempo real.  Esta herramienta se llama AutoIt 3 Window Spy, y la tienes en el menú Inicio > Todos los programas > AutoHotkey.

AutoIt 3 Window Spy

Al ejecutarla, según vas moviendo el ratón por el monitor, esta aplicación te mostrará las coordenadas absolutas y relativas en la sección Mouse Position.

Conclusiones del control del ratón con AutoHotkey

Con AutoHotkey podrás:

  • saber las coordenadas (x,y) del ratón;
  • mover el puntero a una posición determinada (x,y);
  • hacer clic en unas coordenadas determinadas (x,y).

Una vez más, te recuerdo la encuesta (ratón o mouse), tu granito de arena para todos los que hablamos español en todo el mundo.

Si la has rellenado, te lo agradecemos todos, porque así podremos ver un mapa con todos los países con participantes.

* * * * *

Si te interesa AutoHotkey, te doy un par de recomendaciones más:

  1. Lee los otros artículos de AutoHotkey de este mismo blog. Los tienes todos si filtras por «AutoHotkey» en la nube de etiquetas (columna derecha del blog).
  2. Suscríbete al blog, o sígueme en LinkedIn o Twitter (@jssprt). De esta manera, serás el primero en enterarte de la publicación de los artículos.

Artículos relacionados:

Personalizar el teclado con AutoHotkeyCómo personalizar el teclado con AutoHotkey: BLOQUEO DE MAYÚSCULAS ratón UtechSmart Venus y AutoHotkey - miniUn ratón de jugar, el UtechSmart Venus, ¡para trabajar! Domina las fechas con AutoHotkey AutoHotkey 3AutoHotkey: macros más avanzadas (3)
Jesús Prieto

Jesús Prieto

Querido traductor: quiero compartir contigo muchas cosas que podrás aprovechar como profesional: desde herramientas especiales hasta técnicas comerciales; desde estrategias de marketing hasta trucos de productividad personal; desde cómo diseñar tu marca personal hasta novedades de impuestos.
Todos los artículos

Archivado en: encuesta, macros, productividad Etiquetado como: AutoHotkey, mouse, ratón

Comentarios

  1. eazydwn dice

    12/julio/2017 en 5:13 am

    Muchas gracias , me ha servido mucho

    Responder
    • Jesús Prieto dice

      12/julio/2017 en 9:02 am

      Gracias.

      Que sepas que tengo pensado empezar con una serie de artículos dedicados a AutoHotkey.

      Saludos.

      … Jesús Prieto …

      Responder
  2. Jaime Lamprea dice

    1/septiembre/2017 en 2:28 am

    Buenas....Quisiera saber si con autohotkey podria detectar el movimiento del mouse y al mover este aplique una funcion o tarea especifica como la funcion de una tecla ..
    Osea que si al mover el mouse a la derecha un poco se active o escriba la laetra "Z" el el bloc de notas por ejemplo... Se puede hacer esto ? Gracias por su respuesta...

    Responder
    • Jesús Prieto dice

      1/septiembre/2017 en 9:16 am

      Hola, Jaime:

      No lo he intentado nunca, pero creo que no hay ninguna función de AutoHotkey para detectar si se ha movido el ratón.

      De modo que supongo que solo podrás hacerlo programando un poco, con un temporizador de 1 segundo, por ejemplo, (funciones SetTimer o Sleep), y ver si han cambiado las coordenadas del ratón.

      ¡Suerte!

      … Jesús Prieto …

      Responder
  3. Jaime dice

    31/mayo/2018 en 5:05 am

    Excelente el blog! me surge la duda, además de posicionar el mouse en un sector concreto, podemos hacer que a continuacion copie un texto dentro de un campo?

    Responder
    • Jesús Prieto dice

      31/mayo/2018 en 8:43 am

      Hola, Jaime:
      Sí, se puede…
      Para copiar un campo, podrías hacer lo siguiente (en esquema, sin ir a la programación de AutoHotkey):
      1. Situar el ratón en las coordenadas del campo.
      2. Hacer clic (para tener el foco en ese campo).
      3. Seleccionar todo (con CTRL+A o CTRL+E).
      4. Copiar (con CTRL+C)
      Por cierto: Una aplicación útil de AutoHotkey es ir pasando automáticamente de un campo a otro (suele funcionar con la tecla TAB) y así tener el contenido de todos los campos en una variable para poder procesar ese texto.
      ¡Suerte!
      … Jesús Prieto …

      Responder

Comentar Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

 

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Jesús Prieto

Jesús Prieto 2015

Sobre mí

Encuesta: coger

SUSCRÍBETE AL BOLETÍN

Serás el primero en saber que hay un nuevo artículo en Gonduana.

Lo más visto…

Artículos más leídos de Gonduana
Vídeos más vistos de Gonduana
Gonduana en las redes sociales

Últimos artículos

  • Comodín para buscar paréntesis anidados en Word
  • Comodín para buscar palabras repetidas en Word
  • ¡Feliz año 2019!
  • Cómo es la pantalla de presentación de Trados Studio
  • Cómo borrar duplicados en Word con comodines
  • Una parábola para comerciales: «Los 3 jóvenes en la nieve»
  • Cómo cambiar el formato de texto para WhatsApp con AutoHotkey
  • Seleccionar todos los segmentos de Trados Studio con AutoHotkey
  • Novedades de Trados Studio 2019
  • Opciones de la vista Memorias de traducción en Trados Studio

Nube de etiquetas

anglicismos AutoHotkey cobros comodines copias de seguridad correo español Excel foto fórmulas geografía geometría GTD imagen impagos impuestos libros marca matemáticas memoQ mouse MT negociación Outlook parábolas PDF PHP poesía power PowerPoint ratón regex retrasos sector tarifas tipografía TM Trados Studio VBA vídeo webinarios Word WordPress XML zoología

Categorías

  • adaptación (3)
  • blog (10)
  • comercial (23)
  • contabilidad (2)
  • encuesta (1)
  • etimología (4)
  • fiscalidad (2)
  • hardware (3)
  • macros (29)
  • marketing (8)
  • noticias (4)
  • productividad (39)
  • seguridad (5)
  • social (9)
  • software (39)
  • TAO (40)
  • terminología (8)
  • traducción automática (2)
  • traducción literaria (1)
  • tradumática (36)
  • vídeo (17)
Política de privacidad
Política de cookies
Aviso legal
Creative Commons

Licencia Creative Commons

Blog de Gonduana: recursos para traductores

Esta web usa cookies
Es cansino, sí, pero la ley europea me obliga a avisarte que este blog, como casi el 100%, usa cookies para recabar datos. ¿Estás de acuerdo con mi Política de cookies? Vale Más información