Func Problem

  • Hi Ich hab ein problem mit den funktonen save/loadEdit. Aus irgendeinem grund schließt sich das prog mit eiem fehler. Ich bin allerdings zu doof diesen fehler zu finden. evt kann mir ja einer weiterhelfen!!!

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.3.6.1
    Author: myName
    Script Function:
    Template AutoIt script.
    #ce ----------------------------------------------------------------------------
    ; Script Start - Add your code below here
    #include <ScrollBarConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiButton.au3>
    #include <StructureConstants.au3>
    #include <GUIScrollBars.au3>
    #include <GUIScroll.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiTab.au3>
    Global $sIni = @ScriptDir & "\Gui.ini"
    Global $iEdits = IniRead($sIni, "Edits", "Count", 1)
    ConsoleWrite($iEdits & @CRLF)
    Global $hEdit[$iEdits][6], $iTop = 5

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

    $Kundenkartei = GUICreate("Kundenkartei", 1400, 1000)
    $Load = GUICtrlCreateButton("Load", 30, 16, 75, 25)
    $Save = GUICtrlCreateButton("Save", 130, 16, 75, 25)
    $New = GUICtrlCreateButton("New" , 230, 16, 75, 25)
    $Rechnung = GUICtrlCreateButton("Rechnung", 330, 16, 75, 25)
    $PageControl1 = GUICtrlCreateTab(40, 65, 1300, 900)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $TabSheet1 = GUICtrlCreateTabItem("Besitzer ") ;Besitzer
    $Name = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Vorname = GUICtrlCreateLabel("Vorname", 56, 188, 68, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Hausnummer = GUICtrlCreateLabel("Hausnummer", 56, 308, 96, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $weg = GUICtrlCreateLabel("Straße", 56, 248, 51, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Postleitzahl = GUICtrlCreateLabel("Postleitzahl", 56, 368, 83, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Ort = GUICtrlCreateLabel("Ort", 56, 428, 26, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Tele = GUICtrlCreateLabel("Tele.", 56, 488, 39, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Mobil = GUICtrlCreateLabel("Mobil-tele.", 56, 548, 78, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $VornameIn = GUICtrlCreateInput("", 210, 188, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $StraIn = GUICtrlCreateInput("", 210, 248, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $PostleitzahlIn = GUICtrlCreateInput("", 210, 368, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $OrtIn = GUICtrlCreateInput("", 210, 428, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TeleIn = GUICtrlCreateInput("", 210, 488, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $MobilIn = GUICtrlCreateInput("", 210, 548, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $HausnummerIn = GUICtrlCreateInput("", 210, 308, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TabSheet2 = GUICtrlCreateTabItem("Tier ") ;Tier
    $TName = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTierart = GUICtrlCreateLabel("Tierart", 56, 188, 49, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TRasse = GUICtrlCreateLabel("Rasse", 56, 248, 49, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGb = GUICtrlCreateLabel("Geburtztag", 56, 308, 80, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGeschlecht = GUICtrlCreateLabel("Geschlecht", 56, 368, 81, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TKennzeichen = GUICtrlCreateLabel("Kennzeichen", 56, 428, 93, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTranspondernummer = GUICtrlCreateLabel("Transpondernummer", 56, 488, 142, 21)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TNameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTierartIn = GUICtrlCreateInput("", 210, 188, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TRasseIn = GUICtrlCreateInput("", 210, 248, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGbIn = GUICtrlCreateInput("", 210, 308, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGeschlechtIn = GUICtrlCreateInput("", 210, 368, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TKennzeichenIn = GUICtrlCreateInput("", 210, 428, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTranspondernummerIn = GUICtrlCreateInput("", 210, 488, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TabSheet3 = GUICtrlCreateTabItem("Behandlung ") ;Behandlung
    $hAdd = GUICtrlCreateButton("Hinzufügen", 430, 16, 75, 25)
    GUICtrlCreateTabItem("")
    $hTabSheet3 = GUICreate("HilfsTab 3", 1270, 820, 55, 130, BitOR($WS_POPUP, $WS_VSCROLL, $WS_CLIPSIBLINGS), $WS_EX_MDICHILD, $Kundenkartei)
    GUICtrlSetBkColor($hTabSheet3,0xFFFFFF)
    For $i = 0 To $iEdits - 1
    _newEdit($i)

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

    Next
    GUISetState(@SW_SHOW, $Kundenkartei)
    Scrollbar_Create($hTabSheet3, $SB_VERT, 10 + ($iEdits-5)*80)
    Scrollbar_Step(20, $hTabSheet3, $SB_VERT)
    GUISetState(@SW_HIDE, $hTabSheet3)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hAdd
    ReDim $hEdit[UBound($hEdit) + 1][5]
    _newEdit($iEdits)
    $iEdits += 1
    IniWrite($sIni, "Edits", "Count", $iEdits)
    _GUIScrollBars_SetScrollRange($hTabSheet3, $SB_VERT, 0, 5 + 10+($iEdits-5)*80)
    Case $PageControl1
    If _GUICtrlTab_GetCurSel($PageControl1) = 2 Then
    GUISetState(@SW_SHOW, $hTabSheet3)
    Else
    GUISetState(@SW_HIDE, $hTabSheet3)
    EndIf
    Case $Save
    _SaveEdit($i)
    Case $Load
    _loadEdit($i)
    EndSwitch
    WEnd
    Func _newEdit($iEditNr)
    GUISwitch($hTabSheet3)
    ConsoleWrite($iEditNr & @CRLF)
    $hEdit[$iEditNr][0] = GUICtrlCreateEdit("", 56, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][1] = GUICtrlCreateEdit("", 236, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][2] = GUICtrlCreateEdit("", 416, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][3] = GUICtrlCreateEdit("", 596, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][4] = GUICtrlCreateEdit("", 776, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][5] = GUICtrlCreateEdit("", 956, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $iTop += 80
    GUISwitch($Kundenkartei)
    EndFunc ;==>_newEdit

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

    Func _loadEdit($iEditNr)
    $hload = InputBox("Load", "Welche Kundenkartei soll geladen werden?")
    GUICtrlSetData($hEdit[$iEditNr][0],IniRead($hload,"Edit" & $iEditNr & "0" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][1],IniRead($hload,"Edit" & $iEditNr & "1" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][2],IniRead($hload,"Edit" & $iEditNr & "2" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][3],IniRead($hload,"Edit" & $iEditNr & "3" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][4],IniRead($hload,"Edit" & $iEditNr & "4" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][4],IniRead($hload,"Edit" & $iEditNr & "5" ,"Edit", ""))
    EndFunc
    Func _SaveEdit($iEditNr)
    $iSave = InputBox("Save", "Unter welchem Titel soll die Kundenkartei gespeichert werden?")
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "0" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "1" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "2" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "3" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "4" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "5" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    EndFunc

    [/autoit]

    Einmal editiert, zuletzt von Stormrider (23. Mai 2010 um 19:20)

  • Hallo StormRider,

    du hast die Funktionen mit einem ungültigen Wert aufgerufen. Mach es so und es klappt:

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------
    AutoIt Version: 3.3.6.1
    Author: myName
    Script Function:
    Template AutoIt script.
    #ce ----------------------------------------------------------------------------
    ; Script Start - Add your code below here
    #include <ScrollBarConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GuiButton.au3>
    #include <StructureConstants.au3>
    #include <GUIScrollBars.au3>
    #include <GUIScroll.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiTab.au3>
    Global $sIni = @ScriptDir & "\Gui.ini"
    Global $iEdits = IniRead($sIni, "Edits", "Count", 1)
    ConsoleWrite($iEdits & @CRLF)
    Global $hEdit[$iEdits][6], $iTop = 5

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

    $Kundenkartei = GUICreate("Kundenkartei", 1400, 1000)
    $Load = GUICtrlCreateButton("Load", 30, 16, 75, 25)
    $Save = GUICtrlCreateButton("Save", 130, 16, 75, 25)
    $New = GUICtrlCreateButton("New" , 230, 16, 75, 25)
    $Rechnung = GUICtrlCreateButton("Rechnung", 330, 16, 75, 25)
    $PageControl1 = GUICtrlCreateTab(40, 65, 1300, 900)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $TabSheet1 = GUICtrlCreateTabItem("Besitzer ") ;Besitzer
    $Name = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Vorname = GUICtrlCreateLabel("Vorname", 56, 188, 68, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Hausnummer = GUICtrlCreateLabel("Hausnummer", 56, 308, 96, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $weg = GUICtrlCreateLabel("Straße", 56, 248, 51, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Postleitzahl = GUICtrlCreateLabel("Postleitzahl", 56, 368, 83, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Ort = GUICtrlCreateLabel("Ort", 56, 428, 26, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Tele = GUICtrlCreateLabel("Tele.", 56, 488, 39, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $Mobil = GUICtrlCreateLabel("Mobil-tele.", 56, 548, 78, 23)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $NameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $VornameIn = GUICtrlCreateInput("", 210, 188, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $StraIn = GUICtrlCreateInput("", 210, 248, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $PostleitzahlIn = GUICtrlCreateInput("", 210, 368, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $OrtIn = GUICtrlCreateInput("", 210, 428, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TeleIn = GUICtrlCreateInput("", 210, 488, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $MobilIn = GUICtrlCreateInput("", 210, 548, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $HausnummerIn = GUICtrlCreateInput("", 210, 308, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TabSheet2 = GUICtrlCreateTabItem("Tier ") ;Tier
    $TName = GUICtrlCreateLabel("Name", 56, 128, 46, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTierart = GUICtrlCreateLabel("Tierart", 56, 188, 49, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TRasse = GUICtrlCreateLabel("Rasse", 56, 248, 49, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGb = GUICtrlCreateLabel("Geburtztag", 56, 308, 80, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGeschlecht = GUICtrlCreateLabel("Geschlecht", 56, 368, 81, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TKennzeichen = GUICtrlCreateLabel("Kennzeichen", 56, 428, 93, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTranspondernummer = GUICtrlCreateLabel("Transpondernummer", 56, 488, 142, 21)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TNameIn = GUICtrlCreateInput("", 210, 128, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTierartIn = GUICtrlCreateInput("", 210, 188, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TRasseIn = GUICtrlCreateInput("", 210, 248, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGbIn = GUICtrlCreateInput("", 210, 308, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TGeschlechtIn = GUICtrlCreateInput("", 210, 368, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TKennzeichenIn = GUICtrlCreateInput("", 210, 428, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TTranspondernummerIn = GUICtrlCreateInput("", 210, 488, 329, 22)
    GUICtrlSetFont(-1, 12, 400, 0, "Arial")
    $TabSheet3 = GUICtrlCreateTabItem("Behandlung ") ;Behandlung
    $hAdd = GUICtrlCreateButton("Hinzufügen", 430, 16, 75, 25)
    GUICtrlCreateTabItem("")
    $hTabSheet3 = GUICreate("HilfsTab 3", 1270, 820, 55, 130, BitOR($WS_POPUP, $WS_VSCROLL, $WS_CLIPSIBLINGS), $WS_EX_MDICHILD, $Kundenkartei)
    GUICtrlSetBkColor($hTabSheet3,0xFFFFFF)
    For $i = 0 To $iEdits - 1
    _newEdit($i)
    Next
    GUISetState(@SW_SHOW, $Kundenkartei)
    Scrollbar_Create($hTabSheet3, $SB_VERT, 10 + ($iEdits-5)*80)
    Scrollbar_Step(20, $hTabSheet3, $SB_VERT)
    GUISetState(@SW_HIDE, $hTabSheet3)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hAdd
    ReDim $hEdit[UBound($hEdit) + 1][6] ;<=============== warscheins noch von mir
    _newEdit($iEdits)
    $iEdits += 1
    IniWrite($sIni, "Edits", "Count", $iEdits)
    _GUIScrollBars_SetScrollRange($hTabSheet3, $SB_VERT, 0, 5 + 10+($iEdits-5)*80)
    Case $PageControl1
    If _GUICtrlTab_GetCurSel($PageControl1) = 2 Then
    GUISetState(@SW_SHOW, $hTabSheet3)
    Else
    GUISetState(@SW_HIDE, $hTabSheet3)
    EndIf
    Case $Save
    for $i = 0 to $iEdits -1 ;<=======================
    _SaveEdit($i)
    Next
    Case $Load
    for $i = 0 to $iEdits -1 ;<=======================
    _loadEdit($i)
    Next
    EndSwitch
    WEnd
    Func _newEdit($iEditNr)
    GUISwitch($hTabSheet3)
    ConsoleWrite($iEditNr & @CRLF)
    $hEdit[$iEditNr][0] = GUICtrlCreateEdit("", 56, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][1] = GUICtrlCreateEdit("", 236, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][2] = GUICtrlCreateEdit("", 416, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][3] = GUICtrlCreateEdit("", 596, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][4] = GUICtrlCreateEdit("", 776, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $hEdit[$iEditNr][5] = GUICtrlCreateEdit("", 956, $iTop, 180, 70, BitOR($WS_VSCROLL, $ES_WANTRETURN))
    $iTop += 80
    GUISwitch($Kundenkartei)
    EndFunc ;==>_newEdit

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

    Func _loadEdit($iEditNr)
    $hload = InputBox("Load", "Welche Kundenkartei soll geladen werden?")
    GUICtrlSetData($hEdit[$iEditNr][0],IniRead($hload,"Edit" & $iEditNr & "0" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][1],IniRead($hload,"Edit" & $iEditNr & "1" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][2],IniRead($hload,"Edit" & $iEditNr & "2" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][3],IniRead($hload,"Edit" & $iEditNr & "3" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][4],IniRead($hload,"Edit" & $iEditNr & "4" ,"Edit", ""))
    GUICtrlSetData($hEdit[$iEditNr][5],IniRead($hload,"Edit" & $iEditNr & "5" ,"Edit", ""))
    EndFunc
    Func _SaveEdit($iEditNr)
    ConsoleWrite("Zeilen: " & UBound($hEdit) & "Spalten: " & UBound($hEdit,2) & "Dim: " & UBound($hEdit,0) & @CRLF)
    $iSave = InputBox("Save", "Unter welchem Titel soll die Kundenkartei gespeichert werden?")
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "0" ,"Edit", GUICtrlRead($hEdit[$iEditNr][0]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "1" ,"Edit", GUICtrlRead($hEdit[$iEditNr][1]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "2" ,"Edit", GUICtrlRead($hEdit[$iEditNr][2]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "3" ,"Edit", GUICtrlRead($hEdit[$iEditNr][3]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "4" ,"Edit", GUICtrlRead($hEdit[$iEditNr][4]))
    Local $hFile = IniWrite($iSave,"Edit" & $iEditNr & "5" ,"Edit", GUICtrlRead($hEdit[$iEditNr][5]))
    EndFunc

    [/autoit]

    mfg (Auuto)Bert

  • Danke!! Ist es möglich, das man nur einmal gefragt wird, unter welchem namen man die kartei laden und speichern will??

  • Du könntest eine ComboBox einfügen, mit deren Hilfe du eine Auswahl aller Kunden in eine Ini speicherst. Ähnlich wie in folgendem Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #Include <GuiComboBox.au3>

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

    Const $sElect = "bitte eine URL auswählen"
    Global $URL

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

    If Not FileExists(@ScriptDir & "\URL.INI") Then
    $sData = "AutoIt=http://www.autoit.de" & @LF & "Dein Thread=http://www.autoit.de/index.php?page=Thread&postID=156685#post156685" & @LF & "AutoIt V3=http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe"
    IniWriteSection(@ScriptDir & "\URL.INI", "URLs", $sData)
    EndIf

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

    $hGui = GUICreate("Combobox mit INI für URL-Aufruf", 300, 160, 302, 218)
    $hcboProg = GUICtrlCreateCombo("", 8, 8, 200, 25)
    $hbtnAdd = GUICtrlCreateButton("&Hinzufügen", 213, 8)
    $hbtnDel = GUICtrlCreateButton("&Löschen", 213, 33)
    $hlblURL = GUICtrlCreateLabel("", 8, 35, 200, 50)
    $hbtnOpen = GUICtrlCreateButton("&Öffnen", 8, 85)
    read_INI()
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $hbtnAdd
    $write1 = InputBox("URL", "Bitte eine gültige URL eingeben")
    If $write1 <> "" Then
    $write2 = InputBox("URL verwalten unter", "Bitte Kurzbegriff eingeben")
    If $write2 <> "" Then IniWrite(@ScriptDir & "\URL.INI", "URLs", $write2, $write1)
    GUICtrlSetData($hcboProg, $write2, $write2)
    EndIf
    show_Selection()
    Case $hbtnDel
    $sDel = GUICtrlRead($hcboProg)
    IniDelete(@ScriptDir & "\URL.INI", "URLs", $sDel)
    GUICtrlSetData($hcboProg,"")
    read_INI()
    Case $hcboProg
    show_Selection()
    Case $hbtnOpen
    ShellExecute($URL)
    ;ConsoleWrite($URL & @CRLF)
    EndSwitch
    WEnd

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

    Func read_INI()
    $list1 = IniReadSection(@ScriptDir & "\URL.INI", "URLs")
    ConsoleWrite($list1 & @CRLF)
    if IsArray($list1) Then
    For $i = 1 To $list1[0][0]
    GUICtrlSetData($hcboProg, $list1[$i][0])
    Next
    EndIf
    _GUICtrlComboBox_InsertString ($hcboProg,$sElect,0)
    _GUICtrlComboBox_SetCurSel($hcboProg,0)
    EndFunc ;==>read_INI

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

    Func show_Selection()
    If GUICtrlRead($hcboProg) = $sElect Then
    GUICtrlSetState($hbtnOpen, $GUI_DISABLE)
    GUICtrlSetData($hlblURL, "")
    Else
    GUICtrlSetState($hbtnOpen, $GUI_ENABLE)
    $Prog = GUICtrlRead($hcboProg)
    ConsoleWrite("ausgewählt: " & $Prog & @CRLF)
    $URL = IniRead(@ScriptDir & "\URL.INI", "URLs", $Prog, "")
    GUICtrlSetData($hlblURL, $URL)
    EndIf
    EndFunc ;==>show_Selection

    [/autoit]


    Falls dies aber ein grösseres Projekt wird solltest du dich in SQLite einarbeiten, da ist die Datenverwaltung deutlich einfacher,

    mfg (Auto)Bert

  • gib es keine einfachere Möglichkeit?? Er soll doch nur alle befehle in den funktionen save und load ausführen, ohne das er die input immer wieder aufruft und erneut fragt. Er soll das ganze mit dem einen abfragen nach dem namen machen!?!?

  • Mit GUICtrlCreateInput ein Einagbefeld im oberen Tabbereich. Dies ist aber meines Erachtens in der Praxis nicht bedienerfreundlich, denn einmal vergessen einen neuen Namen einzugeben und es wird die Kartei eines anderen Kunden überschrieben (Kann allerdings mit der ComboBox auch passieren)

    mfg (Auto)Bert