Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Sehr großes Problem mit den verschiedenen Audiotags (https://www.delphipraxis.net/75463-sehr-grosses-problem-mit-den-verschiedenen-audiotags.html)

Jelly 21. Aug 2006 10:35

Re: Sehr großes Problem mit den verschiedenen Audiotags
 
Das kommt hin... Du musst Dir nur noch Gedanken machen, wie du die Songs in den Speicher lädst. TObjectList ist nur ein Vorschlag von mir. Die List würd ich aber nicht in der gleichen Unit unterbringen.

Nils_13 21. Aug 2006 10:36

Re: Sehr großes Problem mit den verschiedenen Audiotags
 
Hm, ich hatte früher dafür ein einfaches Array, warum eigentlich nicht in die gleiche Unit ? Außerdem ist Filename: String nicht gut, wenn ich mehrere Lieder hinzufügen will, knallt es.

Jelly 21. Aug 2006 10:47

Re: Sehr großes Problem mit den verschiedenen Audiotags
 
Zitat:

Zitat von Nils_13
Außerdem ist Filename: String nicht gut, wenn ich mehrere Lieder hinzufügen will, knallt es.

Zeig mal bischen Code... WAS knallt :gruebel:

Nils_13 21. Aug 2006 10:49

Re: Sehr großes Problem mit den verschiedenen Audiotags
 
Hier wird es knallen:
Delphi-Quellcode:
procedure TfrmMain.AddFiles(files : Array of String);
var
  len : integer;
  i  : integer;
begin
  len := Length(fFiles);
  SetLength(fFiles, len + Length(files));
  for i := 0 to high(files) do
  begin
    fFiles[len+i] := ReadID3Tag(files[i]);    <-- es müssen mehrere hintereinander ausgelesen werden können, das ist noch der alte Code, aber der neue macht das wahrscheinlich nicht mit
  end;
  if lbList.Count > 17 then
    xiScroll.Visible := True
  else
    xiScroll.Visible := False;
  UpdateListBox();
end;
Nachtrag:
Delphi-Quellcode:
fFiles : Array of TAudioFile;

Jelly 21. Aug 2006 11:41

Re: Sehr großes Problem mit den verschiedenen Audiotags
 
Ich würd weiterhin auf diese Arrays verzichten und bei TObjectList bleiben.

Delphi-Quellcode:
TfrmMain = class (TForm)
...
public
  MusicFiles : TObjectList ;
  procedure AddFiles (Files : array of string) ;
end ;


implementation

procedure TfrmMain.AddFiles (Files : array of string) ;
var
 AudioFile : TAudioFile ;
begin
     for i := low(Files) to high(Files) do begin
        if lowercase(ExtractFileExt(Files[i])) = '.mp3' then
           AudioFile := Tmp3File.create (Files[i])
        else if lowercase(ExtractFileExt(Files[i])) = '.wma' then
           AudioFile := TwmaFile.create (Files[i])
        else
           raise exception.create ('Fileextension unknown for Audiofile') ;
        MusicFiles.Add (AudioFile) ;  // MusicFiles nicht vergessen zu initialisieren
     end ;
end ;
end.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:33 Uhr.
Seite 3 von 3     123   

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