Treeview - Übergeordneten Item auslesen

  • Hi,

    kann man irgentwie den übergeordneten Item eines Listview Items auslesen.

    Hier mal mein TestCode

    Spoiler anzeigen
    [autoit]


    $GUI = GUICreate("", 625, 443, 192, 124)

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

    $TreeView = GUICtrlCreateTreeView(104, 40, 393, 281)

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

    $1 = GUICtrlCreateTreeViewItem("2",$TreeView)

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

    GUICtrlCreateTreeViewItem("2.1",$1)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    EndSwitch
    WEnd

    [/autoit]

    und ein bild
    autoit.de/wcf/attachment/9039/

  • so?

    Spoiler anzeigen
    [autoit]

    #include <GuiTreeView.au3>
    $GUI = GUICreate("", 625, 443, 192, 124)

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

    $TreeView = GUICtrlCreateTreeView(104, 40, 393, 281)

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

    $1 = GUICtrlCreateTreeViewItem("2", $TreeView)
    GUICtrlCreateTreeViewItem("2.1", $1)

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

    $2 = GUICtrlCreateTreeViewItem("3", $TreeView)
    GUICtrlCreateTreeViewItem("3.1", $2)

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

    $hTmp = _Treeview_GetParentByChildText($TreeView,"3.1")
    MsgBox(0,"",$hTmp)

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

    $hTmp = _Treeview_GetParentByChildText($TreeView,"2.1")
    MsgBox(0,"",$hTmp)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    EndSwitch
    WEnd

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

    Func _Treeview_GetParentByChildText($hTree, $sText)
    If Not IsHWnd($hTree) Then $hTree = GUICtrlGetHandle($hTree)
    $hWnd = _GUICtrlTreeView_GetFirstItem($hTree)
    Do
    $hWnd = _GUICtrlTreeView_GetNext($hTree, $hWnd)
    If @error Then ExitLoop
    Until _GUICtrlTreeView_GetText($hTree, $hWnd) = $sText
    Return _GUICtrlTreeView_GetParentHandle($hTree,$hWnd)
    EndFunc ;==>_Treeview_GetParentByChildText

    [/autoit]
    • Offizieller Beitrag

    Noch ein Beispiel, mir ist gerade danach:

    Spoiler anzeigen
    [autoit]

    #include <GuiTreeView.au3>
    $GUI = GUICreate("", 625, 443, 192, 124)

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

    $TreeView = GUICtrlCreateTreeView(104, 40, 393, 281)

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

    $1 = GUICtrlCreateTreeViewItem("2", $TreeView)
    GUICtrlCreateTreeViewItem("2.1", $1)

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

    $2 = GUICtrlCreateTreeViewItem("3", $TreeView)
    GUICtrlCreateTreeViewItem("3.1", $2)

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

    $hTmp = _Treeview_GetParentByChildText($TreeView,"3.1")
    MsgBox(0,"",$hTmp)

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

    $hTmp = _Treeview_GetParentByChildText($TreeView,"2.1")
    MsgBox(0,"",$hTmp)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    EndSwitch
    WEnd

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

    Func _Treeview_GetParentByChildText($hTree, $sText)
    If Not IsHWnd($hTree) Then $hTree = GUICtrlGetHandle($hTree)
    $hfound = _GUICtrlTreeView_FindItem ($hTree,$sText)
    Return _GUICtrlTreeView_GetParentHandle($hTree,$hfound )
    EndFunc ;==>_Treeview_GetParentByChildText

    [/autoit]