Jump to content

Recommended Posts

Posted

So, im trying to read

$npc51c1 = GUICtrlCreateInput("npc51c1", 48, 192, 81, 21)

from within a function however, it constantly returns 0 instead of giving the value of the input box and from what ive been reading, if it returns a 0 its because its due to failure. Could anyone tell me what im doing wrong? my function is below.

Func CityCoords($CityNumber, $NpcLevel)
    Local $npc1, $npc
    GUICtrlSetData($Status, "Writing City " & $CityNumber & " Coords to File!")
    If $NpcLevel = 5 Then
        For $i = 1 To 70 Step 1
            ;Generate GUI Input Name
            $npc1 = "$npc5" & $CityNumber & "c" & $i
            ;Read GUI Input and Return Value
            $npc = GUICtrlRead($npc1)
            ;Write GUI Value to File
            IniWrite("city" & $CityNumber & "coords.ini", "npc" & $NpcLevel & $CityNumber & "coords", $i, $npc)
        Next
    Else
        For $i = 1 To 60 Step 1
            ;Generate GUI Input Name
            $npc1 = "$npc10" & $CityNumber & "c" & $i
            ;Read GUI Input and Return Value
            $npc = GUICtrlRead($npc1)
            ;Write GUI Value to File
            IniWrite("city" & $CityNumber & "coords.ini", "npc" & $NpcLevel & $CityNumber & "coords", $i, $npc)
        Next
    EndIf
    GUICtrlSetData($Status, "Done!")
EndFunc   ;==>CityCoords
  • Moderators
Posted

b3lorixx,

You need to use Eval to get the value of the variable whose name you are creating in $npc1.

This should work:

;Generate GUI Input Name
$npc1 = "npc5" & $CityNumber & "c" & $i ; Note no $ at the front
;Read GUI Input and Return Value
$npc = GUICtrlRead(Eval($npc1)) ; And use Eval to get the value of the variable referenced by that string with the $ in front

Let me know if it works for you - it does for me. :)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Posted

b3lorixx,

You need to use Eval to get the value of the variable whose name you are creating in $npc1.

This should work:

;Generate GUI Input Name
$npc1 = "npc5" & $CityNumber & "c" & $i ; Note no $ at the front
;Read GUI Input and Return Value
$npc = GUICtrlRead(Eval($npc1)) ; And use Eval to get the value of the variable referenced by that string with the $ in front

Let me know if it works for you - it does for me. :)

M23

Works Wonderfully Thank you so much
  • Moderators
Posted

b3lorixx,

My pleasure. :)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

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
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...