Thema: Delphi top100 in mp3player

Einzelnen Beitrag anzeigen

EvilDragon

Registriert seit: 15. Sep 2003
Ort: Berlin
143 Beiträge
 
Delphi 7 Enterprise
 
#1

top100 in mp3player

  Alt 15. Jun 2004, 19:44
hi leutz, ich versuche nun seit 2 tagen eine toplist für meinen mp3player zu programmieren.
wenn ein track komplet durchgelaufen ist wird überprüft ob in der listbox (top100l) schon was drin steht wenn nicht, dann wird der aktuellgespielter track eingetragen bzw die variabeln in die vorher aus dem Id3Tag der artist und titel ausgelsen wurde.
wenn schon was in der liste steht werden die inhalte in strings geladen der platz abgezogen und nachgeschaut ob artist und titel identisch sind, wenn ja, dann listbox.item.delete(i) den platz addieren um 1 und eintragen in listbox
sollte nicht gleich sein dann einfach eintragen mit platz=1

platz heißt eigentlich punkte bzw. stimmen....

hier mein jetzige und 3. code:

Delphi-Quellcode:
procedure Thauptprog.top100Timer(Sender: TObject);
var artneu, trackneu, zkneu, zklist, plist : String;
    pneu, i, code : Integer;
begin
  if Trackbar1.Position = TrackBar1.Max then //status von song
  begin
    artneu := id3_tag.EdtArtist.Text; //id3tag artist
    trackneu := id3_tag.EdtTitle.Text; //id3tag titel
    if top100l.Count = 0 then
    begin
      pneu := 1;
      top100l.Items.Add(IntToStr(pneu)+'~'+artneu+'~~'+trackneu);
    end
    else if top100l.Count > 0 then
    begin
      for i:=0 to top100l.Count-1 do
      begin
        zkneu := artneu+'~~'+trackneu;
        zklist := top100l.Items[i];
        plist := Copy(zklist,0,Pos('~',zklist)-1);
        Val(plist, pneu, code);
        zklist := Copy(zklist, Pos('~',zklist)+1, Length(zklist));
        if zklist=zkneu then
        begin
          top100l.Items.Delete(i);
          pneu := pneu+1;
          top100l.Items.Add(IntToStr(pneu)+'~'+zkneu);
        end
        else
        begin
          pneu := 1;
          top100l.Items.Add(IntToStr(pneu)+'~'+zkneu)
        end;
      end;
    end;
  end;
end;
mein prob, es geht auch so weit aber bei meist mehr wie 2-3 einträgen fängt er an nicht mehr zu vergleich oder speichert einträge doppelt ect...
www.codedragon.de check this out!
  Mit Zitat antworten Zitat