![]() |
Re: Textdatei (txt) in Stringgrid einlesen
Zitat:
|
Re: Textdatei (txt) in Stringgrid einlesen
Zitat:
|
Re: Textdatei (txt) in Stringgrid einlesen
@DeddyH
Zitat:
Delphi-Quellcode:
wichtig ist nur daß RowCount nicht kleiner 2 wird, damit die "grauen Überschriften" nicht verschwinden.
for i:=0 to xxxx.count-1 do
....... yyy.rowcount:=xxxx.count+1; Mein Vorgehen scheint nicht logisch aber es klappt. Oder hab ich nur Glück gehabt? Ich meine mich erinnern zu können, daß RowCount für die sichtbaren/anzeigbaren Zeilen steht, bin mir aber nicht sicher. (über den Speicher, den man da verbraten kann mach ich mir jetzt mal keine Gedanken) Gruß K-H |
Re: Textdatei (txt) in Stringgrid einlesen
Wenn ich von vornherein weiß, wieviele Zeilen/Spalten ich benötige, ist die Erhöhung innerhalb einer Schleife IMHO suboptimal. Und für die "grauen" Spalten/Zeilen habe ich ja FixedRows bzw. FixedCols mit berücksichtigt :zwinker:
|
Re: Textdatei (txt) in Stringgrid einlesen
Welche Schleife?
so ists deutlicher:
Delphi-Quellcode:
und wenn RowCount<2 ist, dann klappt das mit den FixedRows nicht mehr. (D2006 und D7)
for i:=0 to xxxx.count-1 do
begin ....... end; yyy.rowcount:=xxxx.count+1; Gruß K-H |
Re: Textdatei (txt) in Stringgrid einlesen
Ach, so war das gemeint. OK, dann spielt es keine Rolle, wann man RowCount/ColCount setzt, Hauptsache, vor dem ersten indizierten Zugriff. Und ja, Du hast recht, nur fixe Spalten oder Zeilen akzeptiert das Dingen nicht. Aber in meinen Augen ist das eh nicht die dollste Komponente der VCL, daher meide ich sie nach Möglichkeit.
|
Re: Textdatei (txt) in Stringgrid einlesen
Hallo,
und ich bevorzuge sie :wink: Es ist kein Problem das Array Cells mit Werten zu belegen auch wenn RowCount/ColCount kleiner als der Index für Cells ist. Auch ein Zugriff auf die Inhalte des Cells-Array verursacht keine Zugriffsverletzungen.
Delphi-Quellcode:
Grid.Cells[c,r], Grid.Cols[c] und Grid.Rows[r] sind unabhängig vom dem durch ColCount/RowCount definierten Bereich.
Grid.Cells[Grid.ColCount + 1000, Grid.RowCount + 1000] := 'Test';
Showmessage(Grid.Cells[Grid.ColCount + 1000, Grid.RowCount + 1000]); //erst wenn man was selectieren will, knallt es Grid.Row := Grid.RowCount + 1000;// "Gitterindex außerhalb" |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz