Wieso schrecklich was gefällt dir an dem Code nicht?
Oder wie würdest du sowas schreiben ?
Delphi-Quellcode:
Function DeletePicture(PicInfo:Pointer): Boolean;
Var I,Index: Integer;
ptr2: ^TPictureInfo; // Addresse auf Eintrag im Dyn. Array Picture
Begin
Result:=False;Index:=-1;
For I:=0 to Count-1 do Begin // Array durchlaufen
ptr2:=@Picture[I]; // Addresse des Eintrags holen
// wenn übergebende Addresse = Addresse des Eintrags speichere Index
if PicInfo = ptr2 Then Index:=I;
End;ptr2:=nil; //Pointer nicht mehr benötigt
if Index <> -1 Then Begin
//"Lücke" im Array mit nachfolgenden Füllen
For I:=Index to high(Picture)-1 do
Picture[I]:=Picture[I+1];
SetLength(Picture,Count-1); //Array um eins kürzen
Result:=True;
End;
End;
Vielleicht jetzt verständlicher !