Einzelnen Beitrag anzeigen

Qnkel

Registriert seit: 14. Mär 2004
114 Beiträge
 
FreePascal / Lazarus
 
#1

TPicture-Array per for-to-do-Schleife füllen < zu blöd :(

  Alt 17. Okt 2010, 23:29
Moin.

Programmiere mit Lazarus, habe vorher Delphi genutzt.

Ich habe ein TPicture-Array und will dort Bilder von einem Kartenspiel reinladen. Die sind von 0 bis 31 durchnummeriert.

Mein Code:

Delphi-Quellcode:
var
  Kartenblatt: array[0..31] of TPicture;
 
function Kartenladen(Pfad, Typ: string): Boolean;
var i: integer;
begin
  Result := True;
  for i:=0 to 31 do
    begin
      ShowMessage(Pfad + '\' + IntToStr(i) + '.' + Typ);
      Kartenblatt[i].PNG.Create;
      If FileExists(Pfad + '\' + IntToStr(i) + '.' + Typ) then
        Kartenblatt[i].PNG.LoadFromFile(Pfad + '\' + IntToStr(i) + '.' + Typ)
      Else
        Result := False;
    end;
end;
Wo liegt der Fehler?
Am Anfang hatte ich noch direkt Kartenladen[i].LoadFromFile genutzt ohne die Dateierweiterung vorher anzugeben.
Der Funktion soll ja eig. mit der Variable "Typ" erst der Dateityp übergeben werden, habe gehoffft TPicture erkennt das automatisch.

Aber auch wenn ich direkt mit ".PNG." arbeite und PNG-Dateien liefere, stürzt es mit na Fehlermeldung in der picture.inc ab.

Wo liegt mein Fehler?
Lazarus v0.9.29 (2010-10-31 SVN 28000)
  Mit Zitat antworten Zitat