Einzelnen Beitrag anzeigen

Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#1

class property : array of Record (Felder ansprechen)

  Alt 27. Mär 2009, 18:14
Hallo,

angeregt durch einen andere Thread versuche ich mich gerade an Array-Propertys. Mit Array of Standard-Type funktioniert das. Auch mit Array of MyRecord, aber dort würde ich gerne gleich auf die Record-Felder zugreifen.

Leider hört es bei mir auf, wenn es sich Standard-Deklarationen in Klassen entfernt.
Delphi-Quellcode:
type
  TMyRecord = record
    name : String;
    value : Integer;
  end;

  TMyArray = array of TMyRecord;

  LittleTestList = class(TObject)
  private
    FItems : TMyArray;
    function GetItem(index: Integer): TMyRecord;
    procedure SetItem(index: Integer; const Value: TMyRecord);
  public
    property Items[index: Integer]: TMyRecord read GetItem write SetItem; default;
  end;

[...]

procedure TForm1.Button1Click(Sender: TObject);
var
  aRecord : TMyRecord;
begin
  LittleTestList.Items[1] := aRecord; // OK
  LittleTestList[1] := aRecord; // OK

  LittleTestList.Items[1].name := aRecord.name; // Linken Seite kann nichts zugewiesen werden
end;
Wie muss ich das angehen, um direkt auf das Feld innerhalb des deklarierten Record's zugreifen zu können?
  Mit Zitat antworten Zitat