Jump to content
Sign in to follow this  
Maurice

"Variable used without being declared" problem

Recommended Posts

Maurice

HotKeySet ( "{PAUSE}", "Pos_1" )
    ToolTip( "Place Mouse cursor on top left point and press PAUSE", @Desktopwidth / 2, 7, "", 0, 2)

func Pos_1()
    $first = MouseGetPos()
    HotKeySet ( "{PAUSE}", "Pos_2" )
    ToolTip( "Place Mouse cursor on bottom right point and press PAUSE", @Desktopwidth / 2, 7, "", 0, 2)
endfunc

func Pos_2()
    $second = MouseGetPos()
    HotKeySet ( "{PAUSE}", "Quit" )
    ToolTip( "Press PAUSE to quit", @Desktopwidth / 2, 7, "", 0, 2)
    Doing()
endfunc

func Quit()
    Exit
endfunc

sleep(2000)

Func Doing()
    while 1 
        MouseClick ( "left" , random( $first[1] , $second[1] ), random($first[2] , $second[2] ), 1 , 0)
        sleep(10)
    WEnd
endfunc

Error:

MouseClick ( "left" , random( $first[1] , $second[1] ), random($first[2] , $second[2] ), 1 , 0)

MouseClick ( "left" , random( ^ Variable used without being declared.

MouseGetPos page

As you can see I declared $first and $second in the $first = MouseGetPos() at the beginning.

So why isn't it working?

Edited by Maurice

Share this post


Link to post
Share on other sites
MHz

The undeclared variables are of Local scope as the rules of Dim apply. You will need to declare them as Global to share between functions are pass as a function parameter.

Dim = Local scope if the variable name doesn't already exist globally (in which case it reuses the global variable!)

:)

Share this post


Link to post
Share on other sites
Maurice

Thank you very much. Didn't know I had to declare variables if I want to have them global.

Share this post


Link to post
Share on other sites

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
Sign in to follow this  

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.