Einzelnen Beitrag anzeigen

blink182

Registriert seit: 19. Jun 2007
126 Beiträge
 
Delphi 5 Standard
 
#8

Re: Wie mache ich ein dyn. Array eines Objects

  Alt 28. Jan 2009, 10:00
hab das eben mal in meinem Delphi getestet

Delphi-Quellcode:
  TDCM = class(TObject)
        private
           FfeldA:integer;
// FfeldB:single;
// FfeldC:string;
           function getfeldA:integer;
           procedure setfeldA(value:integer);
// function getfeldB:single;
// procedure setfeldB(value:single);
// function getfeldC:string;
// procedure setfeldC(value:string);
        published
           property feldA:integer read getfeldA write setfeldA;
// property feldB:single read getfeldB write setfeldB;
// property feldC:string read getfeldC write setfeldC;
       end;

       TDCMlist = array of TDCM;



var
  Form1: TForm1;
 bla:TDCM;
implementation

{$R *.DFM}

procedure TDCM.setfeldA(value:integer);
begin
    FfeldA := value; // ! hier tritt der Fehler auf !
                       // wenn aus dem Hauptprogramm ein Feld
                       // geschrieben werden soll
                       // Fehlermeldung folgt untenstehend
end;


function TDCM.getfeldA:integer;
begin
result:=FfeldA;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
bla:=TDCM.Create;
bla.setfelda(5);
showmessage(inttostr(bla.getfelda));
end;
also das geht bei mir relativ reibungslos.
Bei deinem Quelltext solltest du das const entweder in der Klasse mit in die Prozedur einbauen, oder unten bei der Definition weglassen.
was ich jetzt nicht weiß, ob

Zitat:
Delphi-Quellcode:
procedure TDCM.setfeldA(const value:integer);
begin
    TDCMlist[i].FfeldA := value;
end;
funktioniert. Aber ich denke ehr nicht, aber die obige Prozedur sollte das ja übernehmen.

vllt solltest du um die letze Prozedur zu verwirklichen noch was an deiner Klasse TDCMlist machen, prozeduren-mässig.
hoffe das kannst du jetzt gebrauchen
  Mit Zitat antworten Zitat