Hallo und willkommen in diesem Forum!
Erst einmal ein paar Hinweise, von denen Du Dich bitte nicht abschrecken lässt:
1. Um Code in einem Posting zu kennzeichen, benutze doch demnächst bitte die Code-Tags. Das kannst Du auch noch nachträglich mit der "Edit"-Funktion machen
2. Auch wenn Deine Frage natürlich thematisch zu diesem Tutorial gehört, stelle Deine Fragen doch bitte demnächst, in einer der anderen Abteilungen dieses Forums. Das hilft anderen, Deine Postings wiederzufinden, sollten sie das gleiche Problem haben wie Du.
Und nun zu Deiner Frage:
Ich bin mir nicht sicher, dass ich Dein Problem verstehe. Aber hier schon mal ein paar Anmerkungen, die auf jeden Fall stimmen:
Quelltext
1: 2: 3: 4:
| type TStrings = array[1..20] of String; var Strings:Tstrings; |
Da es in Delphi bereits einen Datentypen mit Namen TStrings gibt, würde ich einen anderen Namen suchen, um verwechslungen zu vermeiden.
Und jetzt bin auch schon an dem Punkt angelangt, wo ich Dir nicht weiterhelfen kann: Du hast zehn Editfelder, aber das Array besitzt zwanzig Felder. Waurm das?
Diese Funktion ...
Quelltext
1: 2: 3: 4: 5:
| procedure THauptformular.Button_Adresse_speichernClick(Sender: TObject); begin Strings_Speichern(Listbox_Eingabe.ItemIndex,Edit_Eingabe_Name.text); end; //es wird auf die funktion in der extra_unit zugegriffen |
... lässt mich vermuten, dass Du für dieses Editfeld maximal zwanzig Eingaben zulässt.
Wenn ich mal davon ausgehe, dass meine Vermutung richitg ist - damit ich weitermachen kann - brauchst Du jetzt also ein zweidimensionales Array, um die anderen Edit-Felder auch noch unterzubringen.
Also sowas:
Quelltext
1:
| type teditinhalt = array[1..20,1..10] OF String; |
Nun komme ich aber nochmal auf den bereits erwähnten Datentypen TStrings zurück,
und zwar den, den Delphi bereit stellt. Das ist nämlich nichts anderes als eine Liste von Strings, wie sie auch die ListBox verwendet.
Der Datentyp könnte dann so aussehen:
Quelltext
1: 2:
| type teditinhalt = array[1..10] OF TStrings; var editinhalt : TEditInhalt; |
Dann kannst Du nämlich den Inhalt Deiner Listboxen ganz einfach in einem Array speichern. Denn nach dieser Zuweisung:
Quelltext
1:
| editinhalt[1]:=Listbox_Eingabe.Items; |
macht Dein Array jede Änderung, die in ListBox_Eingabe stattfindet, mit, ohne dass Du Dich noch darum kümmern musst.
Ich hoffe, ich konnte Dir helfen,
MfG,
Peter
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".