Einzelnen Beitrag anzeigen

H.Bothur

Registriert seit: 25. Jun 2012
Ort: Seevetal & Lagos
252 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Nutzung von Routinen / Fehler E2016 bei Array

  Alt 3. Mai 2023, 14:11
Nja, kopiert, dein genanntes [i] ist bei dir ein [1], aber egal.
Außerdem ist der erste Eintrag 0 und nicht 1.
Stimmt - das kam durch verschiedene Versuche das so zu kürzen das sogar ich es verstehe


Zitat:
So, Pfxp_names ist erstmal ein Zeiger auf einen Record, welche einen Zeiger auf ein statisches Record-Array enthält.
Also du hast kein eigenes Pfxp_names deklariert, sondern das aus der tgputtylib.pas benutzt? (diese Unit in den Uses)
Nein - selbst habe ich da nichts definiert sondern einfach nur die Unit eingebunden.


Zitat:
Beim ersten pointer. ist es eindeutig,
so
:= names.names^[1].filename;
oder so
:= names^.names^[1].filename;

Jetzt sieht es so aus:

Delphi-Quellcode:
function TForm1.ListingCallback(const names: Pfxp_names): Boolean;
var StartRow,
    i: Integer;
begin
  StartRow := RemoteFilesSG.RowCount;
  for i := 0 to names.nnames -1 do
  begin
    RemoteFilesSG.RowCount := StartRow +names.nnames;
    RemoteFilesSG.Cells[0, StartRow +1] := names^.names^[i].filename;
  end;
  Result:=true;
end;
Aber in beiden Varianten bekomme ich jetzt die Fehlermeldung

E2149 Klasse besitzt keine Standardeigenschaft in Zeile 57 (die Zeile mit den Pointern).
Unterkringelt wird das die eckige Klammer auf beim [i]

Gruss
Hans
Hans-Georg Bothur
www.hermann-juergensen.de
  Mit Zitat antworten Zitat