Selektierte Elemente aus ListView löschen geht nicht...

  • Hallo,

    ich bin jetzt kurz vorm Durchdrehen.
    Ich komm einfach nicht drauf, warum das Löschen der Elemente aus der ListView nicht klappt:

    [autoit]

    #Include "includes/GuiListView.au3"
    #include "includes/GuiConstantsEx.au3"
    #include "includes/Array.au3"

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

    Opt("GUIOnEventMode", 1)

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

    ;Suchergebnisfenster
    #Region ### START Koda GUI section ### Form=Q:\Bosch_CR\BAL\ARCHIV\ProgrammeTools\Bosch_Taskleiste\docucheck\forms\gui_suchmaske.kxf
    $gui_suchfelder = GUICreate("Suchfelder", 271, 456, -1, -1)
    $test = GUICtrlCreateListView("Feldname", 8, 32, 249, 390)
    $button_LIdelete = GUICtrlCreateButton("Entfernen", 8, 428, 83, 25,0)
    $label_suchfelder = GUICtrlCreateLabel("In Suche einbezogene Felder", 8, 8, 150, 17)
    _GUICtrlListView_AddItem($test, "Text 1")
    _GUICtrlListView_AddItem($test, "Text 2")
    GUICtrlSetOnEvent($button_LIdelete, "Liste")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close")
    GUISetState(@SW_SHOW)

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

    Func Liste()
    global $test
    ;$mnr_temp=_GUICtrlListView_GetSelectedIndices($test, true)
    ;$mnr_temp=_GUICtrlListView_GetItemText($test,$mnr_temp[1])
    ;MsgBox(0, "Selektiert", $mnr_temp)
    _GUICtrlListView_DeleteItemsSelected($test)
    EndFunc

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

    Func Close()
    ; Hauptfenster des Programms...
    If @GUI_WinHandle = $gui_suchfelder Then
    ; Programm wird beendet
    Exit
    EndIf
    EndFunc ;==>Close

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

    While 1
    Sleep(1000)
    WEnd

    [/autoit]

    Normalerweise sollte wie gesagt beim Klick auf den Button das selektierte Element aus der ListView gelöscht werden.
    Das will aber einfach nicht klappen.

    Bitte bitte helft mir, sonst muss ich mich jetzt dann gleich einweisen lassen ;(

    Grüßen

    Daniel

    Einmal editiert, zuletzt von basementmedia (16. Mai 2012 um 08:09)

  • Du Benutzt die Control ID, solltest aber das Handle benutzen (Siehe Hilfe zu _GUICtrlListView_DeleteItemsSelected :D)

    Spoiler anzeigen
    [autoit]

    #Include <GuiListView.au3>
    #include <GuiConstantsEx.au3>
    #include <Array.au3>

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

    Opt("GUIOnEventMode", 1)

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

    ;Suchergebnisfenster
    #Region ### START Koda GUI section ### Form=Q:\Bosch_CR\BAL\ARCHIV\ProgrammeTools\Bosch_Taskleiste\docucheck\forms\gui_suchmaske.kxf
    $gui_suchfelder = GUICreate("Suchfelder", 271, 456, -1, -1)
    $test = GUICtrlCreateListView("Feldname", 8, 32, 249, 390)
    $hTest = GUICtrlGetHandle($test)
    $button_LIdelete = GUICtrlCreateButton("Entfernen", 8, 428, 83, 25,0)
    $label_suchfelder = GUICtrlCreateLabel("In Suche einbezogene Felder", 8, 8, 150, 17)
    _GUICtrlListView_AddItem($hTest, "Text 1")
    _GUICtrlListView_AddItem($hTest, "Text 2")
    GUICtrlSetOnEvent($button_LIdelete, "Liste")
    GUISetOnEvent($GUI_EVENT_CLOSE, "Close")
    GUISetState(@SW_SHOW)

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

    Func Liste()
    global $test
    ;$mnr_temp=_GUICtrlListView_GetSelectedIndices($test, true)
    ;$mnr_temp=_GUICtrlListView_GetItemText($test,$mnr_temp[1])
    ;MsgBox(0, "Selektiert", $mnr_temp)
    _GUICtrlListView_DeleteItemsSelected($hTest)
    EndFunc

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

    Func Close()
    ; Hauptfenster des Programms...
    If @GUI_WinHandle = $gui_suchfelder Then
    ; Programm wird beendet
    Exit
    EndIf
    EndFunc ;==>Close

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

    While 1
    Sleep(1000)
    WEnd

    [/autoit]

    21 is only half the truth.

  • Mercy! Manchmal ist man einfach programmierblind.
    Ich kapiers aber einfach nicht, manchmal braucht man die Control ID und dann komischerweise wieder das Handle...