Jump to content

Recommended Posts

Posted

Hi everybody. 

I used AutoIT very many years ago and would need some simple macro now which I have hard time making.

I simply want this to happen.

  1. I place the mouse pointer at start position and press HOME. This will set a variable with mouse position X and Y,
  2. I press END button and it will hold down SHIFT button and click on first position that is set with the variable.
  3. It waits a little and then X position is changing by + 50 pixels.
  4. At end it will release the SHIFT button.

This is how I had it planned with code below. Ofc I will make the code somewhat longer and later it needs to set back to the old X position either by perhaps doing a minus so I get it back, in order to go down on Y as well. Simply thing it is a box of items I wish to click on that is equal spaced.

What I do not understand is how I use the position with array. I get an error with the code below as it gonna click on my first position. And I have no idea how I later on making it adding about 50 in value on the X.

Anyone with advice?

 

#include <AutoItConstants.au3>

Global $pos
HotKeySet("{HOME}","Position")
HotKeySet("{END}","Go")

While 1
    Sleep(50)
    WEnd

Func Position()
Global $pos = MouseGetPos()
MsgBox(1, "Mouse confirm:", "X: " & $pos[0] & " Y: " & $pos[1])
EndFunc

Func Go()
Send("{SHIFTDOWN}")
MouseClick($MOUSE_CLICK_PRIMARY,$pos[0],$pos[1])
Sleep(500)
Global $pos[0] = ($pos[0] + 50)
MouseClick($MOUSE_CLICK_PRIMARY,$pos[0],$pos[1])
Send("{SHIFTUP}")
    EndFunc

 

Posted

You keep redeclaring the $pos variable, declare it once, that's all you need to do. The first declaration is correct, the subsequent global declarations are causing the confusion.

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...