Autor Beitrag
Gerhard_S
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 98



BeitragVerfasst: Do 06.09.12 21:16 
Hallo,
wie entferne ich einen Delimiter aus einer StringList, bevor die Liste in einem ListView angezeigt wird?
Ich habe folgende StringListe:
Item0; SubItem0; SubItem1
Item1; SubItem1; SubItem2
Item2; SubItem2; SubItem3
Item3; SubItem3; SubItem4
Item4; SubItem4; SubItem5
Item5; SubItem5; SubItem6
Sie soll jetzt in einem ListView angezeigt werden, natürlich ohne die Semikola.
Zur Anzeige benutze ich folgenden Code:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
procedure LoadItems(FileName: String; ListView1: TListView);
 var
 i, j : Integer;
 StringList, StringListRow : TStringList;
 NewItem : TListItem;
 begin
     if not FileExists(FileName) then
     begin
     ShowMessage('Can''t find file "' + FileName + '"');
     exit;
     end;
   StringList := TStringList.Create;
   StringListRow := TStringList.Create;
   StringList.Delimiter := ';';
   try
   StringList.LoadFromFile(FileName);
   ListView1.Items.BeginUpdate;
   ListView1.Items.Clear;
   for i := 0 to StringList.Count - 1 do
     begin
     StringListRow.DelimitedText := StringList[i]; 
     with ListView1 do
       begin
       NewItem := Items.Add;
       if StringListRow.Count>0 then
       NewItem.Caption := StringListRow[0];
       for j := 1 to StringListRow.Count -1 do
       NewItem.SubItems.Add(StringListRow[j]);
       end;
     end;
   finally
   ListView1.Items.EndUpdate;
   StringList.Free;
   StringListRow.Free;
   end;
 end;

Kann mir jemand weiterhelfen?
Gerhard_S Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 98



BeitragVerfasst: Do 06.09.12 23:17 
Problem gelöst. Die Angabe des Delimiters muss für diejenige StringList erfolgen, die den "delimited" Text aufnimmt, hier also für StringListRow.