Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Inhalt von EditFeldern speichern (https://www.delphipraxis.net/57176-inhalt-von-editfeldern-speichern.html)

Knotti2005 16. Nov 2005 21:11


Inhalt von EditFeldern speichern
 
Inhalt von EditFeldern speichern/öffnen

Wie kann ich in meheren Editfeldern (26) geschriebene Informationen speichern und dannauch auch wieder öffnen sodass in jedem Feld wiede die originale Information steht...

Wie kann ich das realisieren?

:duck:

BenjaminH 16. Nov 2005 21:17

Re: Inhalt von EditFeldern speichern
 
Füge den Text jedes EditFelds in dasselbe Memo in jeweils einen neue Zeile ein.
Dann musst du nur eine feste Ordnung festlegen, Zeile 1 gehört Edit1, etc...
Und dann speicherst du das Memo.
Dann lädst du es und liest die jeweiligen Zeilen aus.

Zum Laden und Speichernd es Textes eines Memos findest du hier sicher was.

Ultimator 16. Nov 2005 21:20

Re: Inhalt von EditFeldern speichern
 
Das geht aber auch "feiner", indem du eine TStringlist nimmst, in der zu Zeile für Zeile die Strings der Edit-Felder speicherst.
Sie bietet auch Methoden zum Speichern und Laden auf die/von der Festplatte.

Knotti2005 16. Nov 2005 21:49

Re: Inhalt von EditFeldern speichern
 
Hättet ihr freundlicherweise uach Codes...

bitte :oops:

himitsu 16. Nov 2005 21:54

Re: Inhalt von EditFeldern speichern
 
Man könnte ja auch einfach alles in eine INI-File, oder die Registry speichern.

Speichern in 'ner INI ginge dann in etwa so:
Delphi-Quellcode:
Var MyIniFile: TIniFile;
  i: Integer;

Begin
  MyIniFile := TIniFile.Create('myapp.ini');
  For i := 1 to 60 do
    MyIniFile.WriteString('Edits', 'Edit' + IntToStr(i),
      TEdit(FindComponent('Edit' + IntToStr(i))).Text);
  MyIniFile.Free;
End;

PS: das mit dem TMemo/TStringList ... sollte doch recht einfach sein, denn schließlich gibt es massig Beispielcodes alleine in der OH dazu.

Und auch wenn ich diesesmal etwas Code geliefert hab, so ist dieses nicht immer der Fall bei ins ... ein bißchen Eigeninitiative sollte schon vorhanden sein :warn:

Knotti2005 16. Nov 2005 22:10

Re: Inhalt von EditFeldern speichern
 
Ja das eintragen in eien TString list währe ienfacher nur ich weis nicht
wie ich dann aus der tstring list wieder die namen den memo feldern zuordnen soll

keinen PLAN...

Knotti2005 16. Nov 2005 22:17

Re: Inhalt von EditFeldern speichern
 
Da ich keinen Code klauen will hab ich es mal selber versucht..

Delphi-Quellcode:
var
  MyList: TStringList;
begin
  MyList := TStringList.Create;
  try
    MyList.Add(edit1.Text);
    MyList.Add(edit2.Text);
    MyList.Add(edit3.Text);
    MyList.Add(edit4.Text);
    MyList.Add(edit5.Text);
    MyList.Add(edit6.Text);
    MyList.Add(edit7.Text);
    MyList.Add(edit8.Text);
    MyList.Add(edit9.Text);
    MyList.Add(edit10.Text);
    MyList.Add(edit11.Text);
    MyList.Add(edit12.Text);
    MyList.Add(edit13.Text);
    MyList.Add(edit14.Text);
    MyList.Add(edit15.Text);
    MyList.Add(edit16.Text);
    MyList.Add(edit17.Text);
    MyList.Add(edit18.Text);
    MyList.Add(edit19.Text);
    MyList.Add(edit20.Text);
    MyList.Add(edit21.Text);
    MyList.Add(edit22.Text);
    MyList.Add(edit23.Text);
    MyList.Add(edit24.Text);
    MyList.Add(edit25.Text);
    MyList.Add(edit26.Text);

   finally
    end;

  end;

:oops: geht das auch kürzer

himitsu 16. Nov 2005 22:35

Re: Inhalt von EditFeldern speichern
 
Nun ja, zuerst kannst du ja über FindComponent die Edits suchen, brauchst also nicht jedes einzeln behandeln.

Delphi-Quellcode:
var
  MyList: TStringList;
  i: Integer;
begin
  MyList := TStringList.Create;
  for i := 1 to 26 do
    MyList.Add(TEdit(FindComponent('Edit' + IntToStr(i))).Text);
  MyList.SaveToFile('Dateiname.txt');
  MyList.Free;
end;
Delphi-Quellcode:
var
  MyList: TStringList;
  i: Integer;
begin
  MyList := TStringList.Create;
  MyList.LoadFromFile('Dateiname.txt');
  for i := 1 to 26 do
    TEdit(FindComponent('Edit' + IntToStr(i))).Text := MyList[i - 1];
    // -1, da der Index in der Stringlist mit 0 beginnt
    // MyList[...] entspricht MyList.Strings[...]
  MyList.Free;
end;
Allerding alles ohne Fehlerkontrollen und so...

Knotti2005 17. Nov 2005 05:32

Re: Inhalt von EditFeldern speichern
 
JA es geht !!!!! DANKE EUCH....


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:37 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz