Checkbox Click

  • Hallo an alle,

    ich will überprüfen welchen Checkboxen in einem Treeview aktiviert sind, doch leider habe ich dabei ein kleines Problem.
    Wenn ich eine Checkbox im Treeview deaktiviere klappt es aber wenn ich sie dann wieder aktiviere dann ist sie in der Ereignisfunktion noch deaktiviert.

    Woran kann das liegen?

    Bsp.:

    if GUICtrlRead($Array[13])=1 then ;wenn Checkbox aktiviert
    ...
    EndIf

  • ja klar

    Dim $Array[2000]
    $TV= GUICtrlCreateTreeView(320, 30, 200, 200, BitOr($TVS_HASBUTTONS, $TVS_HASLINES, $TVS_LINESATROOT, $TVS_DISABLEDRAGDROP, $TVS_CHECKBOXES,$TVS_SINGLEEXPAND), $WS_EX_CLIENTEDGE)

    $Array[0]= GUICtrlCreateTreeViewItem("All", $TV)

    GUICtrlSetOnEvent($Array[0], "berechnung")


    Func berechnung()
    if GUICtrlRead($Array[0])=1 then
    MsgBox(1,"","")
    Endif
    EndFunc

  • Ich habe das Hauptproblem erkannt.

    Es ist fast unmöglich den Status von einer Checkbox im Treeview korrekt abzufragen.
    z.B. ist der Status wenn man den Baum aufklappt um einmal 1025 usw.

    Hat damit irgendjemand Erfahrung? Gibt es da irgendein System oder werden die Nummern willkürlich verteielt?