Hallo knödel!
Das Problem ist, daß Delphi über eine lange Zeit entstanden ist.
Die Prozedur "Delete" war z.B. schon in der CP/M-Version von Turbo-Pascal vorhanden. Sie verändert den übergebenen Parameter.
StringReplace ist viel neuer. Bei der Einführung dieser Routine gab es schon Properties - und die lassen sich aus prinzipiellen Gründen nicht als VAR-Parameter übergeben. Deshalb wurde die Funktion gewählt.
Code:
Delete(Edit1.Text,1,1); //<-- geht nicht
Edit1.Text:=StringReplace(Edit1.Text,',','.'[rfReplaceAll]); //<-- geht
Deshalb werden jetzt VAR-Parameter möglichst vermieden - die alten Sachen werden aber nicht verändert.
Gruß
Dietmar Brüggendiek