Der letzte Parameter ist ein var-Parameter. Da kannst du nur eine Variable und keine Property angeben.
Stell dir vor, als wenn Property immer einen Getter und Setter hätten und schon fällt einem auf, warum man dieses nicht als Var-Parameter nutzen kann.
Wenn du an der Stelle auf das interne FItems.Last.FItemID
Zugriff hast, dann würde es funktionieren.
Ah, jetzt ja, eine Insel [im Meer des Unverständnisses]. Verstanden, danke.
Und warum verwendest du eigentlich TryStrToInt, wenn du den Rückgabewert nichtmal benutzt?
Da kannst du auch gleich StrToIntDef verwenden und hättest da im Fehlerfall wenigstens keinen Zufallswert.
Außerdem kannst du das direkt an dein Property übergeben (genauer würde es direkt an den Setter weitergeleitet).
Die Zufallswerte hatte ich schon ausgeschlossen über:
Delphi-Quellcode:
id := -1;
TryStrToInt(..., id);
Fitems.Last.FItemID := id;
Dass es da
StrToIntDef
gibt, habe ich irgendwie ganz vergessen. Danke für die Erinnerung.