Problem mit If $case Abfrage

  • Hallo,

    ich baue gerade meine GUI um und habe einen Treeview zusammen bauen lassen.

    [autoit]


    Global $DB = "Firma 1|Firma 2|Firma 3"
    Global $arDB = StringSplit($DB, '|')
    Global $SuchenItemSub[UBound($arDB)]

    [/autoit]


    Mit der For Schleife wird das Baumkonstrukt erstellt

    [autoit]


    For $i = 1 To UBound($arDB) - 1
    $ErstelleItemSub[$i] = GUICtrlCreateTreeViewItem($arDB[$i], $ErstelleItem)
    Next

    [/autoit]


    In einer weiteren Funktion möchte ich jetzt z.B. Abfragen, wenn ich auf "Firma 1" klicke und dann z.B. eine Msgbox ausgeben.
    Bisher sah das so aus, was aber nicht geht

    [autoit]


    If $Case = $SuchenItemSub[1] Then
    MsgBox(0, "Firma", "Firma 1")
    EndIf

    [/autoit]


    Ich habe hier fest mit "1" gearbeitet, da "i" in dieser Funktion nicht mehr bekannt ist, bzw. nach der Erstellung des Baums ja hochgezählt wurde.
    Schöner wäre es natrürlich, das wieder dynamisch hin zu bekommen. Aber momentan poppt noch nicht mal die Messagebox auf.

    Bitte um etwas Hilfestellung

    Einmal editiert, zuletzt von HassanMullah (15. Juli 2013 um 13:24) aus folgendem Grund: Lösung von Bugfix: http://www.autoit.de/index.php?page=Thread&postID=16872#post16872

  • Sowas in der Art?

    Spoiler anzeigen
    [autoit]

    Global $sDB = 'Firma 1|Firma 2|Firma 3'
    Global $asDB = StringSplit($sDB, '|')
    Global $idItem[$asDB[0]]

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

    Global $hGUI, $idTreeView, $iMSG

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

    $hGUI = GUICreate('', 800, 600)
    $idTreeView = GUICtrlCreateTreeView(0, 0, 800, 600)

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

    For $i = 1 To $asDB[0]
    $idItem[$i -1] = GUICtrlCreateTreeViewItem($asDB[$i], $idTreeView)
    Next

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

    GUISetState()

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

    While True
    $iMSG = GUIGetMsg()

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

    Switch $iMSG
    Case $idItem[0] To $idItem[$asDB[0] -1]
    MsgBox(0, 'Firma', $asDB[$iMSG -$asDB[0]], Default, $hGUI)
    Case -3
    Exit
    EndSwitch

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

    WEnd

    [/autoit]