Einzelnen Beitrag anzeigen

drschubi

Registriert seit: 18. Dez 2003
94 Beiträge
 
#1

Problem mit Opendialog und for-Schleife

  Alt 16. Jun 2006, 13:54
Hallo
ich füge mit untenstehender Prozedur mittels Opendialog Dateien sowie Informationen zu einem Treeview dazu.
Es wird aber stets nur die letzte Datei im Treeview angezeigt und dass soft wie der Opendialog.files.count einen Wert hat. Zb. 12 mal der gleiche Titel hintereinander in der Treeview.
Ich schaff es einfach nicht, daß er mir jede Datei nacheinander hinzufügt.
 stream := TFileStream.Create(opendialog.filename[i], fmOpenRead or fmShareDenyWrite); funktioniert nicht

Delphi-Quellcode:
procedure TMainForm.fill_playlist;
var stream: TFilestream;
  l: TListItem;
begin
  if opendialog.Execute then
    for i := 0 to opendialog.Files.Count do
      with ListView1 do
        begin
          l := ListView1.Items.Add;
          Items.BeginUpdate;
          Application.ProcessMessages;
          stream := TFileStream.Create(opendialog.filename, fmOpenRead or fmShareDenyWrite);
          if not Id3v2Tag.exists then
            stream.Seek(0, sobeginning)
          else
            stream.Seek(Id3v2Tag.size, soFromBeginning);
          MpegInfo.LoadFromStream(Stream);
          Id3v1Tag.ReadFromStream(stream);
          l.Caption := Id3v1Tag.Artist;
          l.Subitems.Add(Id3v1Tag.Title);
          l.Subitems.Add(Id3v1Tag.Album);
          l.Subitems.Add(Id3v1Tag.year);
          l.Subitems.AddStrings(opendialog.Files);
          Items.EndUpdate;
        end;
  stream.free;
end;
Kann mir jemand sagen wo ich "i" aus der forschleife übergeben sollte, damit es funktioniert?

Danke René
  Mit Zitat antworten Zitat