"Buttontext" <> "Buttonwert"

  • Nice. Aber wäre es im Falle von "beliebig vielen" Daten pro Control nicht einfacher/geschickter gleich "Sub-Arrays" ins globale Array zu packen? Dann sparste dir die Stringverkettung bzw. das Stringsplit. Ich hatte bei mir im Übrigen das Array an die Funktionen übergeben, damit man zum einen mehrere Datensammelarrays (z.B. für verschiedenartige Controls und schnelleren Zugriff bei sehr vielen Controls) verwenden kann und zum anderen flexibler ist was die Benennung des Arrays anbelangt, sofern man den Code in mehreren Programmen verwenden will.

    2 Mal editiert, zuletzt von misterspeed (5. Juni 2013 um 09:14)

    • Offizieller Beitrag

    Ich würde auch Arrays als Speicher für die (beliebig viel möglichen) Daten zu einem Control verwenden.
    Duch Enumeration der Indizes ist auch ein jederzeit verständlicher Zugriff gewährleistet.

    Spoiler anzeigen
    [autoit]

    Enum $bt1, $bt2, $lb1, $lb2
    Enum $ID, $Text1, $Text2, $EinWeitererParam

    [/autoit] [autoit][/autoit] [autoit]

    Global $aCtrl[4][4] = [ _
    [GUICtrlCreateButton(...), 'Text 1', 'Text 2', 'Irgendwas'], _
    [GUICtrlCreateButton(...), 'Text 1', 'Text 2', 'Irgendwas'], _
    [GUICtrlCreateLabel(...), 'Text 1', 'Text 2', 'Irgendwas'], _
    [GUICtrlCreateLabel(...), 'Text 1', 'Text 2', 'Irgendwas']]

    [/autoit] [autoit][/autoit] [autoit]

    ;...
    ;...

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($aCtrl[$bt1][$ID], $aCtrl[$bt1][$Text2])

    [/autoit]