List View Item

  • Ich kann hier den Fehler nicht Finden:

    Spoiler anzeigen
    [autoit]

    #include <GuiStatusBAR.au3>
    #include <GUIConstants.au3>
    #include <File.au3>
    #include <GuiListBOX.au3>

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

    Global $TXT="Aktuell.txt"
    Dim $ListView1
    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Besitzer\Desktop\Aufträge.kxf
    $Form1 = GUICreate("Note", 402, 364, -1, -1)
    Load ($TXT)
    $Button1 = GUICtrlCreateButton("Neu", 32, 310, 75, 25, 0)
    $Button2 = GUICtrlCreateButton("Entfernen", 264, 310, 75, 25, 0)
    $BAR=_GUICtrlStatusBar_Create ($Form1)
    _GUICtrlStatusBar_SetText ($BAR,"Willkommen")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    Case $Form1
    Case $Form1
    Case $Form1
    Case $Form1

    Case $ListView1
    beep ()
    $Text=GUICtrlRead ($ListView1)
    _GUICtrlStatusBar_SetText ($BAR,$Text)

    Case $Button1
    ;Neu
    $Neu=InputBox ("Neu...","Neuer Auftrag:")
    NEU ($Neu)
    Case $Button2
    ;Entfernen
    $id=GUICtrlRead ($listview1)
    $text=GUICtrlRead ($id)
    $string=StringSplit ($text,"|")
    msgbox (0,$Text,$string[1])
    EndSwitch
    WEnd

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

    func NEU ($NEW)
    FileWriteLine ($TXT,$NEW)
    Load ($TXT)
    EndFunc

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

    func LOAD ($TEXT)
    $Zeilen=_FileCountLines ($TEXT)
    GUICtrlDelete ($ListView1)
    $ListView1 = GUICtrlCreateListView("Auftrag", 24, 24, 353, 281)
    GUICtrlSendMsg(-1, 0x101E, 0, FileGetSize ($TEXT)*5)
    Do
    $ListView1_0 = GUICtrlCreateListViewItem(FileReadLine ($TEXT,$Zeilen)&"|"&$Zeilen, $ListView1)
    if $Zeilen < 1 then ExitLoop
    $Zeilen=$Zeilen-1
    Until 0
    EndFunc

    [/autoit]


    Dabei soll er eigentlich nur wen man den Entfernen Button Drückt den aktuellen Wert Lesen (ListView) und aus der TXT Löschen...
    Er kann aber den Text des Item nicht bestimmen !
    Wieso?
    lg Pceumel

    3 Mal editiert, zuletzt von pceumel (21. Mai 2009 um 13:33)

  • Das problem hatte ich auch mal aber habs hinbekommen

    Spoiler anzeigen
    [autoit]

    #include <GuiStatusBAR.au3>
    #include <GUIConstants.au3>
    #include <File.au3>
    #include <GuiListBOX.au3>
    #include <GUIListView.au3>

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

    Global $TXT="Aktuell.txt"
    Dim $ListView1
    #Region ### START Koda GUI section ### Form=C:\Dokumente und Einstellungen\Besitzer\Desktop\Aufträge.kxf
    $Form1 = GUICreate("Note", 402, 364, -1, -1)
    Load ($TXT)
    $Button1 = GUICtrlCreateButton("Neu", 32, 310, 75, 25, 0)
    $Button2 = GUICtrlCreateButton("Entfernen", 264, 310, 75, 25, 0)
    $BAR=_GUICtrlStatusBar_Create ($Form1)
    _GUICtrlStatusBar_SetText ($BAR,"Willkommen")
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

    Case $Form1
    Case $Form1
    Case $Form1
    Case $Form1

    Case $ListView1
    beep ()
    $Text=GUICtrlRead ($ListView1)
    _GUICtrlStatusBar_SetText ($BAR,$Text)

    Case $Button1
    ;Neu
    $Neu=InputBox ("Neu...","Neuer Auftrag:")
    NEU ($Neu)
    Case $Button2
    Local $item = _GuiCtrlListView_GetFocusedItem( $ListView1)
    MsgBox(0,"",_GUICtrlListView_GetItemTextString($ListView1, $item))
    EndSwitch
    WEnd

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

    func NEU ($NEW)
    FileWriteLine ($TXT,$NEW)
    Load ($TXT)
    EndFunc

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

    func LOAD ($TEXT)
    $Zeilen=_FileCountLines ($TEXT)
    GUICtrlDelete ($ListView1)
    $ListView1 = GUICtrlCreateListView("Auftrag", 24, 24, 353, 281)
    GUICtrlSendMsg(-1, 0x101E, 0, FileGetSize ($TEXT)*5)
    Do
    $ListView1_0 = GUICtrlCreateListViewItem(FileReadLine ($TEXT,$Zeilen)&"|"&$Zeilen, $ListView1)
    if $Zeilen < 1 then ExitLoop
    $Zeilen=$Zeilen-1
    Until 0
    EndFunc
    Func _GuiCtrlListView_GetFocusedItem($hWnd)
    For $i = 0 To _GUICtrlListView_GetItemCount($hWnd) - 1
    If _GUICtrlListView_GetItemState($hWnd, $i, $LVIS_FOCUSED) Then Return $i
    Next
    EndFunc ;==>_GuiCtrlListView_GetFocusedItem

    [/autoit]