Einzelnen Beitrag anzeigen

Deinhaus

Registriert seit: 31. Jan 2008
12 Beiträge
 
#1

Eigene Klasse als Array; mit TImage

  Alt 22. Jun 2010, 19:43
Hi,

ich habe ein kleines Problem mit einer Eigenschaft meiner Klasse.
In der Klasse sind Strings und ein TImage. die Strings kann ich zuweisen, das Image leider nicht.

Der Code meiner Klasse TEnemy:
Delphi-Quellcode:
Type TEnemy = class
      private
        
      public
        name : string;
        path : string;
        image : TImage;
    end;

    TEnemieArray = array of TEnemy;
Der Code, mit dem ich versuche das Array zu füllen:
Delphi-Quellcode:
procedure tfrm_main.init_enemiearray();
VAR I : integer ;
    MyIcon:TIcon;
begin
  SetLength(EnemieArray,FileListBox1.Count+1);
  try
    MyIcon:=TIcon.Create;
    for I := 0 to FileListBox1.Count-1 do
    begin
      EnemieArray[I] := TEnemy.Create;
      MyIcon.Handle := GetShellIcon(FileListBox1.Directory+'\'+FileListBox1.Items.Strings[I], True, False);
      EnemieArray[I].name := FileListBox1.Items.Strings[I];
      EnemieArray[I].image.Picture.Icon. := MyIcon;
    end;
    MyIcon.Free;
  except
  on E : Exception do
    begin
      ShowMessage(E.Message + ' : ' + IntToStr(I));
    end;
  end;
end;
Die Exception löst immer aus, wenn ich MyIcon dem Array.image zuweisen will. Das Zuweisen von MyIcon zu einem Image.picture.icon auf der GUI funzt einwandfrei. Warum klappt das nicht mit dem TImage in dem Array meiner Klasse ?

Die Fehlermeldung des TRY-EXCEPT:
>> Zugriffsverletzung bei Adresse 004C6CB3 in Modul 'ADMINV.exe'. Lesen von Adresse 000001B0 : 0 <<

Gruß
Daniel
  Mit Zitat antworten Zitat