[gelöst] Eingaben speichern und wieder aufrufen

Plattformunabhängige GUIs mit wxWidgets.
Antworten
mathi
User
Beiträge: 314
Registriert: Dienstag 27. November 2007, 14:30

Hallo miteinander,

ich habe ein Programm, in dem über wx.TextCtrl und wx.RadioBox sowie wx.CheckBox

Werte (Zahlen) eingegeben bzw. Auswahl getroffen wird.
Momentan geht alles nach beenden des Programmes verloren.

In welche Richtung muß ich denken, wenn ich sagen wir: die Eingabewerte in eine Datei speichern will um diese dann später wieder zu öffen und die Werte dann in den einzelnen Feldern richtig zu übernehmen??

z.B. TKinter: http://www.python-forum.de/topic-15953. ... +speichern

Gruß Mathi
Zuletzt geändert von mathi am Sonntag 20. September 2009, 12:10, insgesamt 1-mal geändert.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Hallo.

Was hat dein verlinkter Thread denn mit speichern in einer Datei zu tun?

Schau dir mal das [mod]pickle[/mod]-Modul an, das sollte für deine Zwecke genügen.
Das Leben ist wie ein Tennisball.
The Spirit
User
Beiträge: 276
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

der velinkte thread nützt dir nix, da dort auch sobald das programm beendet wird, die daten verloren gehen (wert wird ja nur in eine programmvariable gespeichert).
kann dir für deinen zweck auch pickle ans herz legen.
sollte voll und ganz genügen
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

Kleines Beispiel mit Speicherdialog!

Code: Alles auswählen

import pickle
wildcard = 'Was auch immer Datein (*.endung)|*.endung'

Code: Alles auswählen

        skl = wx.FileDialog(self, message='Kontaktliste speichern:', defaultDir=os.getcwd(), defaultFile="", wildcard=wildcard, style=wx.SAVE)
        skl.SetFilterIndex(2)
        if skl.ShowModal() == wx.ID_OK:
            sklpath = skl.GetPath()
            if os.path.isfile(sklpath):
                skldial = wx.MessageDialog(None, 'Vorhandene Datei überschreiben?', 'Überschreiben', wx.YES_NO | wx.NO_DEFAULT | wx.ICON_QUESTION)
                skldialreturn = skldial.ShowModal()
                if skldialreturn == wx.ID_YES:
                    sklsp = True
                else:
                    sklsp = False
                    skldial = wx.MessageDialog(None, 'Kontaktliste nicht gespeichert', 'Speichern', wx.OK | wx.ICON_ERROR )
                    skldial.ShowModal()
            else:
                sklsp = True
            if sklsp:
                nameofskl = skl.GetFilename()
                sklfile = file(sklpath, 'w')
                pickle.dump(INSERT SOMETHING HERE, sklfile) # da pickeln
                sklfile.close()
                skldial = wx.MessageDialog(None, 'Kontaktliste erfolgreich gespeichert', 'Speichern', wx.OK | wx.ICON_INFORMATION )
                skldial.ShowModal()
        skl.Destroy()
sollte so funktionieren, fallste den code nicht verstehst, erklär ich ihn gerne

mfg
the more they change the more they stay the same
Antworten