![]() |
Nach max.999 Gridzeilen eine Datei in grid nr. 2 fortführen?
Moin,
hab gerade nen ziemlichen schreck bekommen als ich sehen musste wie die datei die ich in ein Stringgrid lud nach 999 Zeilen abgeschnitten wurde :shock: das hier ist der code mit dem ich mein grid fülle:
Delphi-Quellcode:
meine datei umfasst aber ca. 1200- 1300 zeilen, also fehlen mir welche. gibt es einen weg vielleicht vorher schon ein reserve grid zu erstellen wo die restlichen zeilen (im falle das das erste voll ist) reingeladen werden?
var
datei : TextFile; dateiname : String; zeile : String; inhalt : String; perslist : Sarr; pers : Sarr; i, j : integer; begin dateiname := ('c:\rankinglist.htm'); AssignFile(datei, dateiname); reset(datei); inhalt := ''; repeat Readln(datei, zeile); inhalt := inhalt + zeile; until eof(datei); CloseFile(datei); inhalt := getTable(inhalt); perslist := getEntries(inhalt); i := 0; while (perslist[i] <> '') do begin pers := processAccount(perslist[i]); for j := 0 to 11 do begin Stringgrid1.cells[j+1,i+1]:=pers[j]; end; inc(i); end; end; end; Per Suchfunktion hab ich explezit mit diesem thema nix gefunden.. :? Bitte kann mir jemand (vielleicht anhand meines codes) sagen wie ich das bewerkstelligen kann? gruß rhodan |
Re: Nach max.999 Gridzeilen eine Datei in grid nr. 2 fortfüh
Hallo :hi:,
du kannst gucken, wie viele Zeilen du hast und wenn die 999 überschritten werden kannst du ein 2. Grid dynamisch erstellen. :) MfG freak |
Re: Nach max.999 Gridzeilen eine Datei in grid nr. 2 fortfüh
Deine Daten sollten problemlos in dein Grid passen. Du musst nur zur Laufzeit die Zeilenzahl (RowCount) anpassen.
Oder habe ich dein Problem nicht verstanden? |
Re: Nach max.999 Gridzeilen eine Datei in grid nr. 2 fortfüh
Hallo rhodan,
wusstest du, dass du deine Datei viel schneller laden kannst?
Delphi-Quellcode:
Die 999 wird wohl von deiner Routine getEntries() erzeugt. Wer weiß, was bei deinem HTML-Parser schief läuft.
uses
Classes; var sl: TStringList; begin sl := TStringList.Create; sl.LoadFromFile('c:\rankinglist.htm'); // sl.Text enthält jetzt den HTML-Code aus deiner Datei sl.Free; end; Grüße vom marabu |
Re: Nach max.999 Gridzeilen eine Datei in grid nr. 2 fortfüh
Zitat:
Delphi-Quellcode:
;)
uses
Classes; var sl: TStringList; begin sl := TStringList.Create; try sl.LoadFromFile('c:\rankinglist.htm'); // sl.Text enthält jetzt den HTML-Code aus deiner Datei finally sl.Free; end; end; MfG freak |
Re: Nach max.999 Gridzeilen eine Datei in grid nr. 2 fortfüh
ahh, klasse, danke für eure antworten.
habs jetzt schon geschafft die komplette rankliste reinzuladen, wenn ich diese zeile anhänge in meinen button zum laden:
Delphi-Quellcode:
allerdings ändert sich die zeilenanzahl ja ständig, weil leute aus der rankliste fliegen etc.
stringgrid1.RowCount := 1500;
wenn ich 1500 benutze und es sind leute in der liste, und ich sortiere diese dann nach Namen z.B dann hab ich die leeren zeilen die über sind immer ganz oben in der liste :wall: klasse wäre es ja wenn er exact soviele zeilen erstellt wie benötigt werden für die datei, also ne variable zahl. kann mir jemand den befehl dafür nennen oder wie ich das anhand meines (oberer post) codes einbinden kann? das wär super, danke euch rhody |
Re: Nach max.999 Gridzeilen eine Datei in grid nr. 2 fortfüh
Vorausgesetzt dein HTML-Parser macht alles richtig, dann hast du ja wohl die korrekte Zahl der Einträge in persList. Zusammen mit der Kopfzeile deines Grid ergibt das dann:
Delphi-Quellcode:
Grüße vom marabu
StringGrid.RowCount := Succ(Length(persList));
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:27 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