Pregunta sobre Mover el raton y hacer click [SOLUCIONADO]

Pregunta Sin Miedo no te cortes cualquier cosa para empezar - Autoit se comienza facilmente.Para Ordenes o Comandos sueltos. Ver nota como preguntar.
Responder
MaTaXeToS
Mensajes: 22
Registrado: 02 Dic 2009, 09:36

Pregunta sobre Mover el raton y hacer click [SOLUCIONADO]

Mensaje por MaTaXeToS »

Hola, tengo una duda que me esta comiendo la cabeza, y he estado buscando informacion por el foro, y no he sido capaz de encontrar nada.
Me gustaria saber, si con autoIT es posible situar el raton en la esquina superior izquierda de una ventana en concreto.

Me explico mejor, yo con mi script lo que hago es ejecutar un programa que puede tener diferentes dimensiones en cada "persona", para que no hayan problemas en las acciones posteriores de los clicks, me gustaria que al ejecutar el script, este me ejecuta el programa llamado "Ventrilo" y una vez arrancado dicho programa, el raton se situara en la esquina superior izquierda de dicho programa.

Se puede hacer eso?

Link Programa Ventrilo: http://www.versiones-anteriores.com/descargar-342.html

Codigo del script.

Código: Seleccionar todo

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=icon.ico
#AutoIt3Wrapper_outfile=ventrilo1.exe
#AutoIt3Wrapper_Res_Comment=Ejecutar Ventrilo y entrar en el servidor
#AutoIt3Wrapper_Res_Description=Ejecutar Ventrilo y entrar en el servidor
#AutoIt3Wrapper_Res_Fileversion=1.0
#AutoIt3Wrapper_Res_LegalCopyright=MaTaXeToS
#AutoIt3Wrapper_Res_Language=3098
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
Run("Ventrilo 2.1.4.exe")
WinWaitActive("Ventrilo 2.1.4", "&No")
Send("!n")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{ENTER}")

;MouseMove(287,31)
;MouseDown("left")
;MouseUp("left")
;Sleep(250)
En el codigo, esta adaptado ya para que conecte en el primer servidor que hay en la lista.


Gracias.
Última edición por MaTaXeToS el 03 Dic 2009, 02:02, editado 1 vez en total.
Avatar de Usuario
arkcrew
Profesional del Autoit
Mensajes: 506
Registrado: 28 Sep 2009, 19:17
Ubicación: Granada, España
Contactar:

Re: Pregunta sobre Mover el raton y hacer click

Mensaje por arkcrew »

puede utulizar el mousemove con una macro
Mousemove(@desktopheight , @desktopwidght)

Queda algo asi, no esta completo porque os dejo ewte ensaje desde el movil.
Espero que te sirva, ya te digo, echale un ojo a esas macro

Un saludo
MaTaXeToS
Mensajes: 22
Registrado: 02 Dic 2009, 09:36

Re: Pregunta sobre Mover el raton y hacer click

Mensaje por MaTaXeToS »

Si, pero esa macro hace que se mueva el raton respecto a las dimensiones de la pantalla, pero el problema esta en que cuando ejecutas el programa, este se situa en la ultima posicion (x/y) que habias dejado antes de cerrar, entonces, no puedo hacer un movimiento estatico, ya que si muevo la ventana del programa y lo cierro, cuando ejecute mi script, este fallara ya que no seran los mismos (x/y).

Entonces, me gustaria saber si es posible hacer de situar el cursos en la esquina superior izquierda de la ventana actual, de esta forma entonces, si podria mover el raton ya que sabria con exactitud la posicion (x/y) de los menus.
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Pregunta sobre Mover el raton y hacer click

Mensaje por Chefito »

Haber. En autoit se puede hacer de todo :smt003 .
Te recomiendo que cambies el modo de trabajar con las coordenadas del ratón. Puedes cambiar este modo para trabajar solamente con las coordenas de la ventana, siendo siempre la esquina superior izquierda de la ventana 0,0, y sin cambiar los valores de las coordenadas de la ventana esté donde esté.
Utiliza Opt("MouseCoordMode", 0).
Si pones MouseMove(0,0,0) se te moverá siempre a la esquina superior izquierda de la ventana esté donde esté.
Pero poniendo Opt("MouseCoordMode", 0) ya puedes ir directamente a la posición de los botones y demás objetos de la ventana, ya que siempre tendrán las mismas coordenadas.

Después de este rollo :smt005 , te recomiendo que ataques a los objetos directamente (no necesitas tener la ventana visible). Esto se hace con las funciones que empizan por Control...... (ejemplo: ControlClick). Es más profesional. Miralas en la ayuda.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
MaTaXeToS
Mensajes: 22
Registrado: 02 Dic 2009, 09:36

Re: Pregunta sobre Mover el raton y hacer click

Mensaje por MaTaXeToS »

Perfecto, ya funciona a la perfeccion, muchas gracias :)

Aqui esta el codigo:

Código: Seleccionar todo

#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=icon.ico
#AutoIt3Wrapper_outfile=ventrilo1.exe
#AutoIt3Wrapper_Res_Comment=Ejecutar Ventrilo y entrar en el servidor
#AutoIt3Wrapper_Res_Description=Ejecutar Ventrilo y entrar en el servidor
#AutoIt3Wrapper_Res_Fileversion=1.0
#AutoIt3Wrapper_Res_LegalCopyright=MaTaXeToS
#AutoIt3Wrapper_Res_Language=3098
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
Opt("MouseCoordMode", 0)

Run("Ventrilo 2.1.4.exe")
WinWaitActive("Ventrilo 2.1.4", "&No")
Send("!n")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{TAB}")
Send("{ENTER}")

MouseMove(0,0,0)
sleep(1000)
MouseMove(50,150)
sleep(1000)
MouseDown("right")
MouseUp("right")
sleep(100)
MouseMove(70,220)
sleep(500)
MouseMove(200,220)
sleep(100)
MouseDown("left")
MouseUp("left")
sleep(100)
Send("6557vf")
Send("{ENTER}")
MouseMove(50,200)
MouseDown("left")
MouseUp("left")
MouseDown("left")
MouseUp("left")
Responder