Hallo Eddy
Da DisplayFormat nicht im TField vorhanden ist, musst Du die Class-Instance zuerst "Casten". Dafür musst Du den Class-Type feststellen, wie Du das ja schon gemacht hast. Besser wäre jedoch, wenn Du anstelle von if mit case arbeiten würdest, da Du ev. auch noch andere Felder einbeziehen möchtest z.B Datum.
So sieht es aus:
Code:
for i := 0 to Tab1.FieldCount - 1 do
begin
case Tab1.FieldDefs.Items[i].DataType of
ftFloat :
TFloatField(Tab1.FieldDefs.Items[i]).DisplayFormat := '#,##0.00';
end;
end;
Achtung: Diese Cast-Methode umgeht die Kontrolle des Compilers. Er kann also nicht feststellen, ob die beiden Klassen zuweisungskompatibel sind. Du musst also selber sicherstellen, dass das der Fall ist!
Gruss
Xaver