ListBoxen laden

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
Nugi89
Beiträge: 68
Registriert: Do 26. Feb 2015, 13:46

ListBoxen laden

Beitrag von Nugi89 »

Hallo habe folgendes problem,
ich habe den inhalt von 3 ListBoxen in eine Liste gepackt und abgespeichert. Wie kann ich jetzt den inhalt meiner Boxen beim laden wieder herstellen? :cry:
Danke schonmal für die Hilfe.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2639
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: ListBoxen laden

Beitrag von m.fuchs »

Was meinst du mit "Liste gepackt und abgespeichert"?
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Nugi89
Beiträge: 68
Registriert: Do 26. Feb 2015, 13:46

Re: ListBoxen laden

Beitrag von Nugi89 »

ich habe mir eine liste erstellt und dort habe ich meine 3 Listboxen eingefügt.

vill hilft ja der code etwas.

Code: Alles auswählen

var
  x:integer;
 
begin
  list:= TStringList.Create;
 
  for x:=0 to ListBox1.Items.Count - 1 do
  begin
    list.add(ListBox1.Items[x]);
    list.add(ListBox2.Items[x]);
    list.add(ListBox3.Items[x]);
  End;
 
  list.SaveToFile(SaveDialog1.FileName + '1');
  list.free;


ListBox 2 und 3 haben immer die selbe anzahl Items wie ListBox 1.

Hoffe es ist einigermaßen verständlich!
Zuletzt geändert von m.fuchs am Di 7. Apr 2015, 10:47, insgesamt 1-mal geändert.
Grund: Highlighter eingefügt

baumina
Beiträge: 152
Registriert: Mo 3. Feb 2014, 14:07
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: ListBoxen laden

Beitrag von baumina »

Wenn du pro Listbox eine eigene Datei wählen würdest, wärs ganz einfach.

Speichern mit :

Code: Alles auswählen

ListBox1.Items.SaveToFile();

und Laden mit :

Code: Alles auswählen

ListBox1.Items.LoadFromFile();
.

Nugi89
Beiträge: 68
Registriert: Do 26. Feb 2015, 13:46

Re: ListBoxen laden

Beitrag von Nugi89 »

ja so hatte ich es am anfang :D
waren mir aber dann zu viel Dateien die gespeichert wurden.^^

baumina
Beiträge: 152
Registriert: Mo 3. Feb 2014, 14:07
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit

Re: ListBoxen laden

Beitrag von baumina »

Dann könntest auch über eine Ini-Datei im Format

Code: Alles auswählen

[ListBox1]
erster Eintrag
zweiter Eintrag
[ListBox2]
LB2 erster Eintrag
[ListBox3]
ListBox3 ein Eintrag
ListBox3 noch ein Eintrag


nachdenken. Da könntest Du mit WriteSection/ReadSection arbeiten.
.

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: ListBoxen laden

Beitrag von theo »

Nugi89 hat geschrieben:ja so hatte ich es am anfang :D
waren mir aber dann zu viel Dateien die gespeichert wurden.^^

Spielt das eine Rolle? Alles andere ist komplizierter als nötig.
Wenn du unbedingt willst, kannst du vllt. mit Inifiles was machen. http://wiki.freepascal.org/Using_INI_Files/de

Nugi89
Beiträge: 68
Registriert: Do 26. Feb 2015, 13:46

Re: ListBoxen laden

Beitrag von Nugi89 »

Ok danke für die Hilfen^^
ich werde mal mit dem ganzen rum probieren, mal schauen was sich besser macht. :D

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6208
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: ListBoxen laden

Beitrag von af0815 »

Einen XMLPropStorage aufs Formular und im Objektinspektor unter SessionProperties die Listbox.items auswählen. Dann wird das automatisch gespeichert.

Siehe Wiki TXMLPropStorage
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten