Autoit Eingabefeld/Eingabe als txt speichern.

  • Hi zusammen,
    Ich bin noch recht neu hier und auch in der welt des AutoITs. Mein Problem ist ich will ein GUI erstellen in der ein Eingabefeld ist (wo man was reinschreiben kann). Und ein button(button erstellen kann ich schon ;) ) mit dem die eingabe als txt, Optimalfall in irgend einer verschlässelten datei gespeichert wird.

    grüße und danke schon mal im vorraus

    Hillio

    3 Mal editiert, zuletzt von Hillio (7. September 2009 um 21:45)

  • So, hier eine Möglichkeit


    [autoit]

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

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

    Opt('GuiOnEventMode',1) ;Schaltet den 'GuiOnEventMode' an
    Opt('OnExitFunc', 'Ende') ;Ruf die Funktion 'Ende' auf, wenn das Programm geschlossen wird

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

    #Region Variablen
    Global Const $File_Pfad = 'TestDatei.txt' ;Definiert den Pfad der .txt Datei
    #EndRegion

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

    #Region .txt Datei Erstellen und Öffnen
    If FileExists($File_Pfad) Then FileDelete($File_Pfad) ;Wenn die Datei vorhanden ist wird sie gelöscht!!!
    _FileCreate($File_Pfad) ;Erstellt die Datei
    $File_Handle = FileOpen($File_Pfad, 2) ;Öffnet die Datei
    #EndRegion

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

    #Region GUI Erstellen
    $Form1 = GUICreate('Form1', 181, 221, 192, 124) ;Erstellt ein Fenster
    GUISetOnEvent($GUI_EVENT_CLOSE, 'Ende') ;Wenn auf das 'X' geklickt wird, wird die Funktion 'Ende' aufgerufen
    $Edit1 = GUICtrlCreateEdit('', 0, 0, 180, 180) ;Erstellt ein Eingabefeld
    $Button1 = GUICtrlCreateButton('Speichern', 0, 180, 180, 40, $WS_GROUP) ;Erstellt den 'Sperichern' Button
    GUICtrlSetOnEvent(-1, 'Speichern') ;Wenn auf den Button 'Speichern' geklickt wird, wird die Funktion 'Speichern' aufgerufen
    GUISetState(@SW_SHOW) ;Zeigt das GUI
    #EndRegion

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

    #Region Endlosschleife ;Sorgt dafür, dass das Programm sich nicht schließt
    While 1
    Sleep(100)
    WEnd
    #EndRegion

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

    #Region Funktionen
    Func Speichern()
    FileWrite($File_Handle, GUICtrlRead($Edit1)) ;Überschreibt die Datei mit dem Wert aus dem Eingabefeld
    EndFunc

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

    Func Ende()
    FileClose($File_Handle) ;Schließt die Datei. Erst dann sieht man den Inahlt!!!
    Exit ;Schließ das Programm
    EndFunc
    #EndRegion

    [/autoit]


    Hoffe das hilft dir weiter.

  • Vielen dank an alle das problem wäre gelöst.
    Ich hab jetzt noch ein problem mein 2. der GUI in meinem script öffnet ssich nicht wenn der andere zu ende ist:

    danke im vorraus

    hillio