![]() |
Listview einträge laden funzt nicht ganz!!
hi,
wie schon oben steht versuche ich die listview einträge (items) von einer ini datei zu laden. das speicher hab ich hingekriegt aber das laden funzt irgendwie nicht so wie ich will. der fehler ist das er alles in einer spalte laden, weiß einer warum?? hier erstmal der quellcode:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
var a,b : integer; begin ListItem := ListView1.Items.Add; with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do a := readinteger('index','count',0); //definiere ich schon beim speichern damit er weiß wieviel einträge er laden soll label1.Caption := inttostr (a); b := 1; while b <= a do begin with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do begin try listitem.Caption := readstring ('Erster Eintrag','Position' + inttostr(b),''); listitem.SubItems.Add(readstring ('Zweiter Eintrag','Position' + inttostr(b),'')); listitem.SubItems.Add(''); // da ich 3 einträge habe und der 3 vorest mal leer sein soll b := b +1; finally free; end; end; end; end; |
Re: Listview einträge laden funzt nicht ganz!!
Hallo Wadim,
Code:
procedure TForm1.Button3Click(Sender: TObject); var a,b : integer; begin with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do a := readinteger('index','count',0); //definiere ich schon beim speichern damit er weiß wieviel einträge er laden soll label1.Caption := inttostr (a); b := 1; while b <= a do begin with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do begin try [color=red][b]ListItem := ListView1.Items.Add;[/b] [/color] listitem.Caption := readstring ('Erster Eintrag','Position' + inttostr(b),''); listitem.SubItems.Add(readstring ('Zweiter Eintrag','Position' + inttostr(b),'')); listitem.SubItems.Add(''); // da ich 3 einträge habe und der 3 vorest mal leer sein soll b := b +1; finally free; end; end; end; end; Ich denke, Du mußt für jeden neuen Eintrag ein neues Listitem "adden". Warum schreibst Du 2x
Delphi-Quellcode:
with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do
|
Re: Listview einträge laden funzt nicht ganz!!
huhuu - thx es geht, warum ich nur nicht selbst drauf gekommen bin :wall:
ich schreibe dies 2 x weil wenn ich es nur einmal schreibe dann sagt er mir das readstring ein undefinierter bezeichern ist - warum weiß ich nicht?? weißt du es vielleicht?? |
Re: Listview einträge laden funzt nicht ganz!!
Hallo Wadim,
Code:
with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do
[color=red][b]BEGIN[/b][/color] [color=darkblue]// hast Du vergessen :-)[/color] a := readinteger('index','count',0); //definiere ich schon beim speichern damit er weiß ... label1.Caption := inttostr (a); b := 1; while b <= a do begin ... |
Re: Listview einträge laden funzt nicht ganz!!
Zitat:
aber du hast recht - hab dort wirklich ein begin vergessen :thuimb: |
Re: Listview einträge laden funzt nicht ganz!!
Hallo Wadim,
nachdem ich noch einemal nachgelesen habe, meine ich
Code:
Du solltest unbedingt wegen dem Create einen Ressourcenschutzblock (mit "Try/Except/End" wie Du es beim 2. With ja richtig machstest) statt einem Begin/End verwenden.
with TIniFile.Create((ExtractFilePath(ParamStr(0))+'Einstellungen.ini')) do
[color=red][b]TRY[/b][/color] [color=darkblue]// IST BESSER [/color] a := readinteger('index','count',0); //definiere ich schon beim speichern damit er weiß ... label1.Caption := inttostr (a); b := 1; while b <= a do begin ... |
Re: Listview einträge laden funzt nicht ganz!!
Zitat:
mfg wadim |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:54 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 by Thomas Breitkreuz