Ich möchte die Daten eine Tabelle gerne in ein Stringgrid laden. Das StringGrid hat dazu mehrere Spalten (Columns).
Folgender Code:
Delphi-Quellcode:
var
Dataset: TpFIBDataset;
begin
Dataset.DisableControls;
Dataset.First;
while NOT Dataset.Eof do begin
for i := 0 to StringGrid.Columns.Count - 1 do begin
StringGrid.Cells[i, Dataset.RecNo] := Dataset.FindField(StringGrid.Columns[i].DataField);
end;
Dataset.Next;
end;
Dataset.EnableControls;
end;
Dummerweise benötigt dieses Vorgehen für knapp 1000 Datensätze um die 4sec??? Die Variante mit einem simplen FIBQuery hingegen erledigt das ganze in Bruchteilen davon...
Kommentiert man Zeile 9 (... Dataset.FindField ...) hingegen aus, so beträgt die Laufzeit nur noch Millisekunden. Kann es ein, dass FindField extrem langsam ist? Welche Vorschläge zur Performancesteigerung könnt ihr machen?
Vielen Dank