![]() |
Anweisungliste aus Memostring
Hallo,
will ein Programm schreiben, das ermöglicht in einem Memofeld eine Anweisungsliste zu schreiben. Wenn zum Beispiel im Memofeld folgendes steht: A = 234 B = 290 soll in die Varibale A der Wert 234 geschrieben werden und in B der Wert 290 etc.. Bin Ratlos wie ich das am besten umsetze, für eine Anregung, Idee oder Lösungsansatz wäre ich dankbar. Ciao Xenie :wall: |
Re: Anweisungliste aus Memostring
Hallo Xenar,
das wird nicht einfach. Hier mal ein Beispiel fuer drei Variablen (A, B, C):
Delphi-Quellcode:
vars ist ein Array von 0..2 of Integer. Jede Anweisung muss in einer neuen Zeile stehen. Wenn du es dynamischer machen willst, wird das ganze vieeel komplizierter, aber die Idee sollte so rueberkommen.
for i := 0 to Memo1.Lines.Count-1 do
begin Line := Memo1.Lines[i]; VarName := Trim(Copy(Line, 1, Pos('=', Line)-1)); VarValue := Trim(Copy(Line, Pos('=', Line)+1, Length(Line))); vars[Ord(Uppercase(varName)[1])-Ord('A')] := StrToIntDef(VarValue, 0); end; Uebrigens: den Code habe ich nicht getestet, aber er sollte funktionieren Greetz alcaeus |
Namens/Wertepaare, TStrings
TMemo.Lines ist vom Typ TStrings. TStrings kann Daten in der Form "A=234" verwalten, sodass über den Namen ("A") auf den Wert zugegriffen werden kann ("234"). Die Eigenschaft TStrings.Values repräsentiert den Wertbestandteil bei Strings mit Namens/Wertepaaren.
Memo1.Lines.Values['A'] ergibt im obigen Beispiel '234'. Zugriff also mittels "strA := Memo1.Lines.Values['A'];" - strA muss dann noch mit IntToStr in einen Integerwert konvertiert werden (vorher auf leeren String prüfen). |
Re: Anweisungliste aus Memostring
Danke für Eure Hilfe werde ich mal ausprobieren.
Danke Xenar |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:13 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