brauche hilfe bei iniwrite...

  • hallo!

    Ich versuche den skript so hinzubekommen das sachen die in diesem skript eingebe gepspeichert werden und das diese dann wieder nach nem neustart wieder geladen werden....

    Hier der Skript:

    [autoit]

    #include <ButtonConstants.au3>
    #include <DateTimeConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    $Form1 = GUICreate("Wie auch immer!", 633, 478, 390, 277)
    GUISetBkColor(0xFFFFFF)
    $Edit1 = GUICtrlCreateEdit("", 16, 16, 601, 305)
    GUICtrlSetData(-1, "")
    $Button1 = GUICtrlCreateButton("Hinzufügen", 40, 408, 273, 41, $WS_GROUP)
    $Input1 = GUICtrlCreateInput("", 24, 360, 393, 21)
    $Ausgabe = GUICtrlCreateLabel(" Ausgabe für :", 152, 336, 99, 20)
    GUICtrlSetFont(-1, 11, 800, 4, "MS Sans Serif")
    $Input2 = GUICtrlCreateInput("", 464, 360, 145, 21)
    $Betrag = GUICtrlCreateLabel("Betrag :", 512, 336, 58, 20)
    GUICtrlSetFont(-1, 11, 800, 4, "MS Sans Serif")
    $Date1 = GUICtrlCreateDate("2010/11/19 14:45:23", 352, 408, 257, 37)
    GUISetState(@SW_SHOW)

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

    Global $aStuff[1][3]
    $aStuff[0][0] = 0

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    If Not($Input1 = "" Or $Input2 = "") Then
    ReDim $aStuff[$aStuff[0][0] + 2][3]
    $aStuff[0][0] += 1

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

    $aStuff[$aStuff[0][0]][0] = GUICtrlRead($Input1)
    $aStuff[$aStuff[0][0]][1] = GUICtrlRead($Input2)
    $aStuff[$aStuff[0][0]][2] = GUICtrlRead($Date1)

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

    _RefreshList()
    EndIf
    EndSwitch
    WEnd

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

    Func _RefreshList()
    $sStuffTmp = ""
    $iCount = 0
    For $i = 1 To $aStuff[0][0]
    $sStuffTmp &= $aStuff[$i][0] & " ; " & $aStuff[$i][1] & " - " & $aStuff[$i][2] & @CRLF
    $iCount += $aStuff[$i][1]
    Next
    GUICtrlSetData($Edit1, $sStuffTmp & "Gesamt: " & @CRLF & $iCount)
    EndFunc

    [/autoit]
  • Auszug aus deinem letzten Thread:

    Zitat von name22

    Zum Thema speichern schau dir doch BITTE mal die Ini Grundlagen an (IniWrite, IniRead). (Das ist einfach zu verstehen und ich habe keine Lust mehr Scripte für dich ohne Gegenleistung zu schreiben).


    Wenn du nichts selber machen möchtest, oder es nicht mal versuchst und dann behauptest du hast ein Problem mit dem Script :pinch: , dann kannst du ja einen Thread in der Jobbörse machen.

  • Hallo KajaBuschka,

    ich empfehle die anstelle eines Edit-Controls ein Listview-Control zu verwenden. Hier einmal das Grundgerüst (inkl. Speichern/Laden):

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <DateTimeConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Include <GuiListView.au3>
    #include <File.au3>

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

    ;#include <Array.au3>

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

    $Form1 = GUICreate("Wie auch immer!", 633, 478, 390, 277)
    GUISetBkColor(0xFFFFFF)
    $LV = GUICtrlCreateListView("Grund|Betrag|Datum", 16, 16, 601, 305)
    $Button1 = GUICtrlCreateButton("Hinzufügen", 40, 408, 273, 41, $WS_GROUP)
    $InpGrund = GUICtrlCreateInput("", 24, 360, 393, 21)
    $Ausgabe = GUICtrlCreateLabel(" Ausgabe für :", 152, 336, 99, 20)
    GUICtrlSetFont(-1, 11, 800, 4, "MS Sans Serif")
    $InpBetrag = GUICtrlCreateInput("", 464, 360, 145, 21)
    $Betrag = GUICtrlCreateLabel("Betrag :", 512, 336, 58, 20)
    GUICtrlSetFont(-1, 11, 800, 4, "MS Sans Serif")
    $Date1 = GUICtrlCreateDate("2010/11/19 14:45:23", 352, 408, 257, 37)
    GUISetState(@SW_SHOW)

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

    $sLVdat = @ScriptDir & "\Ausgaben.CSV"
    _LoadLV()

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    _SaveLV()
    Exit
    Case $Button1
    If Not ($InpGrund = "" Or $InpBetrag = "") Then
    $j = _GUICtrlListView_GetItemCount($LV)
    If $j > 0 Then
    $aItem = _GUICtrlListView_GetItemTextArray($LV,$j-1)
    _GUICtrlListView_InsertItem($LV,GUICtrlRead($InpGrund),$j-1)
    _GUICtrlListView_AddSubItem($LV,$j-1,GUICtrlRead($InpBetrag),1)
    _GUICtrlListView_AddSubItem($LV,$j-1,GUICtrlRead($Date1),2)
    $Gesamt = 0
    $Gesamt = $aItem[2]+GUICtrlRead($InpBetrag)
    _GUICtrlListView_SetItemText($LV,$j,$Gesamt,1)
    Else
    GUICtrlCreateListViewItem(GUICtrlRead($InpGrund) & "|" & GUICtrlRead($InpBetrag) & "|" & GUICtrlRead($Date1), $LV)
    GUICtrlCreateListViewItem("Gesamt" & "|" & GUICtrlRead($InpBetrag) & "|",$LV)

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

    EndIf
    EndIf
    EndSwitch
    WEnd

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

    Func _saveLV()
    Local $sFile, $aItem, $hFileOut
    $hFileOut = FileOpen($sLVdat, 2)
    For $j = 0 To _GUICtrlListView_GetItemCount($LV) - 1
    $aItem = _GUICtrlListView_GetItemTextString($LV, $j)
    FileWriteLine($hFileOut, $aItem)
    Next
    FileClose($hFileOut)
    EndFunc ;==>_saveLVs

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

    Func _LoadLV()
    Local $aItems
    If FileExists($sLVdat) Then
    $aItems = ""
    _FileReadToArray($sLVdat, $aItems)
    If IsArray($aItems) Then
    _GUICtrlListView_DeleteAllItems($LV)
    ;;;_ArrayDisplay($aItems)
    For $j = 1 To $aItems[0]
    GUICtrlCreateListViewItem($aItems[$j], $LV)
    Next
    EndIf
    EndIf
    EndFunc ;==>_LoadLVs

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

    viel Spass damit,

    mfg autoBert