Ich will aus einem Array mit ca. 100 Records ein Stringgrid füllen. Rowcount gebe ich mit 2 vor , da Fixedrows := 1
Wenn ich es so mache:
Delphi-Quellcode:
zeile := 0; tabelle.rowcount := 2;
for zaehler := low(xyarray) to high(xyarray) do
begin
inc(zeile);
tabelle.cells[1,zeile] := xyarray[zaehler].bezeichnung;
end;
tabelle.rowcount := length(xyarray);
dann wird die Tabelle nur mit genau 53 Einträgen gefüllt.
Erhöhe ich aber rowcount in der Schleife jeweils um 1,
Delphi-Quellcode:
zeile := 0; tabelle.rowcount := 2;
for zaehler := low(xyarray) to high(xyarray) do
begin
inc(zeile);
tabelle.rowcount := tabelle.rowcount + 1;
tabelle.cells[1,zeile] := xyarray[zaehler].bezeichnung;
end;
wird brav das ganze Array eingelesen. Wie kommt es zu diesem Unterschied? Verstehen könnte ich ja, wenn bei der ersten Variante nur eine Zeile beschrieben würde (die erste ist ja fixed!) , oder die ersten 15 (die Abmessung des Stringgrids ist so, daß 15 Zeilen angezeigt werden können).
Warum 53? Was genau bewirkt eigentlich rowcount? Anzahl der angezeigten Zeilen? Oder Anzahl der benutzbaren Zeilen? Gibt es eine Art 'Voreinstellung' für die Zeilenanzahl eines Stringgrids?