Mega Code Archive

 
Categories / Delphi / Examples
 

Delete one item from a dynamic array

type TArrayString = array of string; procedure DeleteArrayIndex(var X: TArrayString; Index: Integer); begin if Index > High(X) then Exit; if Index < Low(X) then Exit; if Index = High(X) then begin SetLength(X, Length(X) - 1); Exit; end; Finalize(X[Index]); System.Move(X[Index +1], X[Index], (Length(X) - Index -1) * SizeOf(string) + 1); SetLength(X, Length(X) - 1); end; // Example : Delete the second item from array a // Beispiel : Lösche das 2. Element vom array a procedure TForm1.Button2Click(Sender: TObject); var a: TArrayString; begin DeleteArrayIndex(a, 2); end;