Einzelnen Beitrag anzeigen

Benutzerbild von rhodan
rhodan

Registriert seit: 4. Okt 2005
Ort: Hamburg
150 Beiträge
 
Delphi 7 Personal
 
#1

Anzahl von listbox Strings anpassen -> aus grid geladen

  Alt 18. Okt 2005, 17:17
Grüße aus Hamburg,

muss nochmal mit meiner Listbox nerven

Habs jetzt zwar mit Hilfe geschafft die einträge aus dem Grid in der Listbox anzuzeigen, allerdings hab ich am ende der listbox immer leere Zeilen/Items (sry bin mir nicht sicher wie exakte name ist).
dies ist mein code mit dem ich die listbox fülle (ein paar var einträge kommen in diesem teil des quelltextes nicht vor, hab nur den listbox-quellcode kopiert):

Delphi-Quellcode:
var
 iRow: integer;
  sPrev, sCurr: string;
  datei : TextFile;
  dateiname : String;
  zeile : String;
  inhalt : String;
  perslist : Sarr;
  pers : Sarr;
  i, j : integer;
  begin
etc etc..........


listbox1.Clear;
   for iRow := 1 to length(perslist) do
    begin
    sCurr := StringGrid1.Cells[CI_ACCT, iRow];
    if sCurr <> sPrev then
    begin
      if iRow > 1 then
      listbox1.items.Add('');
      listbox1.items.Add(sCurr);
      listbox1.items.Add(StringOfChar('-', 10));
      sPrev := sCurr;
    end;
    listbox1.items.Add(StringGrid1.Cells[CI_NAME, iRow]);
  end;
 dateiname := ('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;
 reloadtable.Enabled := true;
      reloadhtml.Enabled := true;
end;
end;
end;
Was ich schon heraus gefunden habe ist das die "Zeilenanzahl" der listbox mit der Sarr definition zusammenhängt.
Delphi-Quellcode:
for iRow := 1 to length(perslist) do
    begin
ist die zeile (denk ich) die auf "sarr" zurückgreift. Die Definition von "Sarr" hab ich ziemlich weit oben in meinem code stehen, direkt über der implementation:

Delphi-Quellcode:
type
 Sarr = Array [0..1000] of String;
statt der 1000 kann ich hier auch ne andere zahl eintragen, meine listbox wird immer exakt diese "Zeilenanzahl" haben.

da ich unterschiedlich lange listen in die listbox lade, möchte ich nun das dieses Array variabel ist bzw. sich an die anzahl der im Grid befindlichen Einträge hält. Wenn ihr nen anderen Quellcode braucht sagt bitte bescheid, ich komm da einfach nicht hinter

Gruße von

Rhodan
  Mit Zitat antworten Zitat