Gespeicherte Daten in InputBoxen einfügen?

  • Hi zusammen,

    ich hab ein kleines Problem mit den Input Boxen.

    Hier mal der Code Ausschnitt

    [autoit]

    $inp_text = GUICtrlCreateInput("", 16, 416, 177, 21)$inp_text2 = GUICtrlCreateInput("", 224, 416, 177, 21)$bt_textsave = GUICtrlCreateButton("Speichern", 224, 480, 105, 17, $WS_GROUP)...While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSEExit Case $bt_textsave _textsave()EndSwitchWEnd
    Func _textsave() $savedtext1 = GUICtrlRead($inp_text) $savedtext2 = GUICtrlRead($inp_text2) IniWrite("ini","SavedVariables","Text1",$savedtext1) IniWrite("ini","SavedVariables","Text2",$savedtext2)EndFunc

    [/autoit]


    so jetzt hab ich halt zwei strings gespeichert.
    wenn der nutzer jetzt dass programm öffnet würd ich gern die gespeichertetn Strings wieder in die Input Boxen einfügen.

    Weiß jmd wie das geht?
    ka warum aber iwie ist die formatierung mist :( sry

  • Hallo cr4yzz,

    • beim Programmende mit [autoit]IniWrite[/autoit] speichern
    • beim nächsten Programmstart mit [autoit]IniRead[/autoit]lesen
    • danach mit [autoit]GuiCtrlSetData[/autoit]den Inputs zuweisen,

    Edit: Skript:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>

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

    GuiCreate("Test",1024,800)
    $inp_text = GUICtrlCreateInput("", 16, 416, 177, 21)
    $inp_text2 = GUICtrlCreateInput("", 224, 416, 177, 21)
    $bt_textsave = GUICtrlCreateButton("Speichern", 224, 480, 105, 17)
    GUICtrlSetData($inp_text, IniRead("ini", "SavedVariables", "Text1", ""))
    GUICtrlSetData($inp_text2, IniRead("ini", "SavedVariables", "Text2", ""))
    GUISetState()

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $bt_textsave
    _textsave()
    Exit
    EndSwitch
    WEnd

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

    Func _textsave()
    $savedtext1 = GUICtrlRead($inp_text)
    $savedtext2 = GUICtrlRead($inp_text2)
    IniWrite("ini", "SavedVariables", "Text1", $savedtext1)
    IniWrite("ini", "SavedVariables", "Text2", $savedtext2)
    EndFunc ;==>_textsave

    [/autoit]

    mfg (Auto)Bert

    Einmal editiert, zuletzt von AutoBert (14. Juni 2010 um 23:34)

  • Wenn du IniWrite kennst, müsstest du auch IniRead kennen ;).

    Edit: Brauchst nicht unbedingt GUICtrlSetData, kannst auch direkt reinschreiben beim erstellen der Controls.

  • also ich hab natürlich auch mal in der zwischenzeit ausprobiert und dazu gekommen:

    1.) $initsavedtext = IniRead("[...]")
    beim 2.text das gleiche
    2.) bei den $inp_text und $inp_text2 einfach den text in der box auf $initsavedtext gestellt.


    es klappt aber auf jeden fall :D

    danke für eure hilfe

    edit: autoBert:

    öh wie denn? :D mit enter bringts nix.
    wie soll ich denn da dann absätze reinbringen? sry aber sonsts hats immer mit normalem Enter geklappt

  • oder so wesentlich kürzer.

    [autoit]

    $inp_text = GUICtrlCreateInput(IniRead("Test.ini", "SavedVariables", "Text1", ""), 16, 416, 177, 21)
    $inp_text2 = GUICtrlCreateInput(IniRead("Test.ini", "SavedVariables", "Text2", ""), 224, 416, 177, 21)
    $bt_textsave = GUICtrlCreateButton("Speichern", 224, 480, 105, 17, $WS_GROUP)

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

    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    Exit
    Case $bt_textsave
    IniWrite("Test.ini", "SavedVariables", "Text1", GUICtrlRead($inp_text))
    IniWrite("Test.ini", "SavedVariables", "Text2", GUICtrlRead($inp_text2))
    EndSwitch
    WEnd

    [/autoit]