Einzelnen Beitrag anzeigen

Gyrospeter

Registriert seit: 11. Apr 2019
49 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: Setlength aufrufen von untergeordneter prozedur auf owner Klasse.

  Alt 4. Mär 2020, 08:56
wenn ich es so verstanden habe

Funktion erstellt um auf die Länge des Arrays zuzugreifen:

Code:
type
  TArrayClass = class
  private
    MyArray: array of Integer;
    function GetArrayLength: Integer;
  public
    property MyArray: Integer read GetArrayLength;
  end;



function TArrayClass.GetArrayLength: Integer;
var
  i: Integer;
begin
  for i := 0 to Length(FMyArray) - 1 do
    Result := Length(FMyArray);
end;
Instanz erzeugen und dann auf das Objekt zugreifen.

Code:
TForm1 = class(TForm)
    cxMemo1: TcxMemo;
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
    FArrayObj: TArrayClass;

    procedure ShowArrayValues;
  end;


procedure TForm1.FormCreate(Sender: TObject);
begin
  FArrayObj := TArrayClass.Create;
end;

// hier setze ich die Länge des Arrays aus der anderen Klasse und greife über die Property
// auf den Rückgabewert der Funktion

procedure TForm1.ShowArrayValues;
begin
  SetLength(FArrayObj.FMyArray, 6);

  cxMemo1.Lines.Add(IntToStr(FArrayObj.MyArray));
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowArrayValues;
end;
  Mit Zitat antworten Zitat