Einzelnen Beitrag anzeigen

Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#9

Re: Klassen-Eigenschaft als Array

  Alt 19. Okt 2007, 15:00
Zitat von heiopei:
hallo,

zuerst solltest du einen Typ TIntArray definieren:

type TIntArray = array of Integer;
Dann brauchst du ein Feld FIntArray: TIntArray. Jetzt musst du noch das Property definieren:

property IntArray[index: Integer]: TIntArray read GetInteger;

GetInteger ist dabei eine Getter-Funktion, die wie folgt definiert ist:

function GetInteger(Index: Integer): Integer;

Die Implementation für GetInteger sollte dan so lauten:

function TDeineKlasse.GetInteger(Index: Integer):Integer;
begin
if FIntArray <> nil then
if Length(FIntArray) < Index then
result := FIntArray[Index];
end;

Hoffe der Code ist selbstsprechend genug!

mfg,
heiopei

PS: du kannst auch mehrdimensionale Properties definieren, indem du statt FIntArray[Index: Integer] z.B. FIntArray[Breite, Tiefe: Integer] schreibst!
Das hat mir sehr weitergeholfen. Danke. Jetzt ist nur noch die Frage, muss ich für jeden Eigenschaftsarray eine eigene Funktion schreiben ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat