Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Frames ansprechen und Stringlisten erstellen (https://www.delphipraxis.net/18098-frames-ansprechen-und-stringlisten-erstellen.html)

Matze 14. Mär 2004 16:49


Frames ansprechen und Stringlisten erstellen
 
Moin!

Ich habe ein Programm geschrieben, in das man die Daten von jemandem (Name, Adresse, Geb-Datum, ...) eingibt, diese werden dann in einer Stringlist gespeichert.

Für die Adresse, das geb-Datum, ... wird immer eine extra Stringlist angelegt und diese nachher zusammengebastelt.

Das geht mit einer Person ja wirklich gut, nur möchte ich es jedoch für mehere Personendaten erweitern und ich weiß nicht wie.

Nachher möchte ich eine Stringlist mit folgendem Text haben:

Zitat:

Datum: 14.03.2004
Uhrzeit: 17:31

Personen:

Pers-Nr1: Luckie
Pers-Nr2: sakura
Pers-Nr3: Daniel
Pers-Nr4: ...

Daten:

Luckie:
Adresse:
Geb-Datum:

sakura:
Adresse:
Geb-Datum:

Daniel:
Adresse:
Geb-Datum:

...
Das kann man schön aus den Stringlists zusammensetzen.

Die Daten gebe ich in Frames ein, die auf Tabsheets liegen.
Diese werden zur Laufzeit für jede Person neu angelegt.

Bei einer Person konnte ich deren Adresse in eine Stringlist schreiben, das Geburtsdatum in eine extra Stringlist und zum Schluss habe ich den Inhalt aller Stringlists in eine geschrieben.

Es klingt sehr umständlich, aber ich möchte es so haben, ohne Datenbank und für jede Daten eine extra Stringlist, da es nachher mit der Formatierung des Textes besser hinhaut.

Ich konnte bei einer Person das Tabsheet und das dazugehörige Frame schön mit dem Namen ansprechen, aber bei mehreren weiß ich nicht so richtig, wie ich das anstellen soll.

Jetzt dachte ich an FindComponent, nur weiß ich nicht, wie ich die Variablen, die in den Frames eingegeben werden in extra Stringlists bekomme. Ich weiß nicht mal genau, wie ich die Stringlists erstellen soll. :angle2:

Ich hoffe, einer versteht mein Problem. :?

HolyCow 15. Mär 2004 19:54

Re: Frames ansprechen und Stringlisten erstellen
 
Ich würde spontan an so etwas denken:

Delphi-Quellcode:
  StringList := TStringList.Create();
  for i := 0 to Frame.ComponentCount - 1 do
  begin
    if( Frame.Components[i] is TDBEdit ) then
      StringList.Add( TEdit( Frame.Components[i] ).Text );
  end;

Matze 16. Mär 2004 10:58

Re: Frames ansprechen und Stringlisten erstellen
 
Hey, die Idee ist gar nicht schlecht, das werde ich sofort ausprobieren.

Vielen Dank! :)

Matze 16. Mär 2004 11:20

Re: Frames ansprechen und Stringlisten erstellen
 
Hmm, ich da damit so meine Probleme. :angle2:

Delphi-Quellcode:
for i := 1 to Frame.ComponentCount do
  if Frame.Components[i].Name = 'Vorname' then
  begin
    List.Add('Vorname: ' + Frame.Components[i].Caption);
  end;
Jetzt habe ich da noch zu wenig Erfahrung.
ich muss ja irgendwie mitteilen, dass ich auf ein Edit zugreifen will, das Edit jedoch den Namen 'Vorname' trägt.

HolyCow hat in seinem Beispiel mit

Delphi-Quellcode:
Frame.Components[i] is TDBEdit
den Komponententyp mit angegeben, das brauche ich so, dass ich den Komponentenname auch mit übergebe.

Dass obiger Code nicht geht ist eigentlich logisch, nur wie muss ich das lösen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:06 Uhr.

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