Sign in to follow this  
Followers 0

Creating n variables

3 posts in this topic

Posted

Hi everyone, I'm a bit noob at this so please be patient ;)

I'm creating a backup manager, I have implemented the backup creating in other executable. Now I'm creating the backup resorting. This is what I have:

#include <File.au3>
#include <Array.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Local $b=@AppDataDir & "\BACKUP\"
Local $search = FileFindFirstFile($b & "\*.*")
Local $n=0
If $search = -1 Then
MsgBox(16,"Backup Manager","No backup existing.")
Exit
EndIf
While 1
Local $file = FileFindNextFile($search)
If @error Then ExitLoop
$n+=1
if @error Then ExitLoop
WEnd
FileClose($search)

Local $arr[$n]
$arr = _FileListToArray ($b)
Local $height=0
$Form1 = GUICreate("Form1", 247, 272, 192, 124)
while $n<>0



$Radio  = GUICtrlCreateRadio("$arr[$n]", 0, $height, 113, 17)


$height+=16
WEnd
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
  Case $GUI_EVENT_CLOSE
   Exit
EndSwitch
WEnd

I've been stuck creating the n variables for the Radios in the GUI. I've been searching a way to do something like:

while n<>0
$"Radio" & $n
$n-=1
wend

But obviously it doesn't work. I don't know if there is a way to do that way or if I've to do another way.

If you have to, ask some question, and sorry about my english.

Share this post


Link to post
Share on other sites



Posted

victor141516,

Welcome to the AutoIt forum. ;)

You could run into trouble if you have a lot of backup files and your GUI became too large to fit in the screen, so you might like to use my scrollbar UDF to make sure you can see them all: :)

#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <File.au3>

#include <GUIScrollbars_Ex.au3>

; Set the folder
Global $sDataDir = @ScriptDir ; Reset this to your folder <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
; Read the files
Global $arr = _FileListToArray($sDataDir)
; Exit if no files
If @error Then
    MsgBox(16, "Backup Manager", "No backup existing.")
    Exit
EndIf

; Crete an array to hold the radio ControlIDs
Global $aRadio[$arr[0] + 1]

; Create the GUI
$Form1 = GUICreate("Form1", 250, 270, 200, 125)

; Create the radios
For $i = 1 To $arr[0]
    $aRadio[$i] = GUICtrlCreateRadio($arr[$i], 10, (30 * $i), 200, 20)
Next

GUISetState(@SW_SHOW)

; Create the scrollbars
_GUIScrollbars_Generate($Form1, 0, 30 * $i)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case Else
            ; See if a radio was selected
            For $i = 1 To $arr[0]
                If $nMsg = $aRadio[$i] Then
                    MsgBox(0, "Hit", "You selected:" & @CRLF & $arr[$i])
                    ExitLoop
                EndIf
            Next
    EndSwitch
WEnd

You can find the UDF in my sig. Please ask if you have any questions. :)

M23

Share this post


Link to post
Share on other sites

Posted

Really really thanks, so useful. Great work with the scrollbar UDF.

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  
Followers 0