Die Deklaration von Delete lautet
procedure Delete(var S: string; Index: Integer; Count: Integer);
Damit ist ersichtlich, daß Delete keinen String zurückgibt, sondern den String im ersten Parameter ändert.
Delphi-Quellcode:
tmpName := Array[x].Name;
Delete(tmpName, 1, 2);
N := pos(' ', tmpName) - 1; // wir wollen den Blank ja nicht mit kopieren!
if N < 0 then
N := Length(tmpName);
Button.Caption := Copy(tmpName, 1, N); // "1", da tmpName die ersten Blanks nicht mehr enthält