arraysvariablescheckboxautoit

Incremental variable definition


I want to automatically define incrementing variable names.

So instead of this:

$Var1 = 'This is variable one :P'
$Var2 = 'This is variable two :P'

I'd like this (pseudo code):

For $i = 1 to UBound($People)-1     
    **$var[$i]** = GUICtrlCreateCheckbox($var[$i], 24, $y, 200, 17) 
    $y = $y + 25 
Next

Does anyone know how?

The code should make as many checkboxes as defined in an array and every checkbox should have its own variable.


Solution

  • You're looking for Assign():

    For $i = 1 To 5
        Assign('var' & $i, $i);
    Next
    

    Then you can access these variables with:

    MsgBox(4096, "My dynamic variables", $var1)
    MsgBox(4096, "My dynamic variables", $var3)
    MsgBox(4096, "My dynamic variables", $var5)
    

    Obviously, var2 and var3 can be used too. What you should have done was storing those values in an array.