Hallo und Entschuldigung für den kryptischen Titel, mir ist nichts Besseres eingefallen.
Vielleicht gibt es eine einfache Lösung für meine Problem, vielleicht bin ich auch momentan nur blind?
Ich versuche, mittels TryStrToInt einen string in einen integer zu wandeln
Delphi-Quellcode:
const
ITEMSHEET_COLUMN_ITEMID = 1;
var
id, startRow, row : Integer;
[...]
FItems.Add(TItemPriceInfo.Create);
TryStrToInt(_data[startRow + row, ITEMSHEET_COLUMN_ITEMID - 1], id); //<-----
FItems.Last.itemID := id;//<-----
funktioniert auch wunderbar. Das hier
TryStrToInt(_data[startRow + row, ITEMSHEET_COLUMN_ITEMID - 1], FItems.Last.itemID); //<-----
aber wirft mir einen Fehler um die Ohren!
Dabei habe ich verwendet:
Delphi-Quellcode:
type TItemPriceInfo = class(TObject)
private
FItemID : Integer;
[...]
public
[...]
property itemID : Integer read FItemID write FItemID;
end;
type TStringMatrix = array of array of string;
var _data : TStringMatrix;
FItems : TObjectList<TItemPriceInfo>;
Der Fehler lautet:
Zitat:
E2250 There is no overloaded version of 'TryStrToInt' that can be called with these arguments
Und das wundert mich doch ein wenig.
Die Umwandlung über eine Zwischenvariable klappt, die direkte Zuweisung nicht...
kann mir das einer erklären? Was habe ich übersehen?