Конференция "Media" » И вновь перемотка ...... (да она самая) [D7, WinXP]
 
  • Ламерёнок (04.06.08 15:26) [0]
    Привет всем ! Пишу плеер  , начал писать перемотку  воот как я это сделал
    //Кнопка Play
    procedure TForm6.Image4Click(Sender: TObject);
    begin
    if (listbox1.itemindex=-1) then begin
    listbox1.ItemIndex:=0;
    end;
    If listbox1.Items.Text = '' then begin
    form4.Label1.caption:='Вы не открытли список медиа файлов';
    form4.Timer1.Enabled:=false;
    form4.Timer1.Enabled:=true;
    form4.Show;
    label1.Caption:='Ошибка';
    exit;
    end;
    If FileExists(ListBox1.items[Listbox1.ItemIndex])=false then begin
    form4.Label1.caption:='Не могу найти файл';
    form4.Timer1.Enabled:=false;
    form4.Timer1.Enabled:=true;
    form4.Show;
    label1.Caption:='Нету такого файла';
    exit;
    end;
    If ListBox1.items[Listbox1.ItemIndex]=MediaPlayer1.FileName then  begin
    MediaPlayer1.Play;
    exit;
    end;
    If (ExtractFileExt(ListBox1.items[Listbox1.ItemIndex])='.mp3')or(ExtractFileExt(Lis tBox1.items[Listbox1.ItemIndex])='.wav')or(ExtractFileExt(ListBox1.items[Listbox 1.ItemIndex])='.wave')or(ExtractFileExt(ListBox1.items[Listbox1.ItemIndex])='.Mp 3')or(ExtractFileExt(ListBox1.items[Listbox1.ItemIndex])='.MP3')or(ExtractFileEx t(ListBox1.items[Listbox1.ItemIndex])='.wmv')or(ExtractFileExt(ListBox1.items[Li stbox1.ItemIndex])='.avi') then begin
    Numberofmusic:=ListBox1.ItemIndex;
    MediaPlayer1.filename:=ListBox1.Items[ListBox1.itemIndex];
    form4.Label1.caption:=ExtractFileName(MediaPlayer1.FileName);
    form4.Timer1.Enabled:=false;
    form4.Show;
    Form6.Show;
    Form4.Timer1.Enabled:=true;
    label1.Caption:=ExtractFileName(MediaPlayer1.FileName);;
    MediaPlayer1.Open;
    MediaPlayer1.Play;
    timer1.Enabled:=true;
    TrackBar1.Max:=MediaPlayer1.Length;// определение длины файла , это та строчка ради которой писал всю процедуру....
    exit;
    end else

    label1.Caption:='Не известный тип файла ';
    form4.Label1.caption:='Не известный тип файла ';
    form4.Timer1.Enabled:=false;
    form4.Timer1.Enabled:=true;
    form4.Show;
    end;

    procedure Tform6.TrackChange(Sender: TObject);
    begin
     mediaplayer1.Position:=trackbar1.Position;
     mediaplayer1.Play;
     end;

    procedure TForm6.Timer1Timer(Sender: TObject);//А воот эта фиговина мне и ненравится
    begin
    label2.Caption:=inttostr(MediaPlayer1.Position div 10);
    TrackBar1.position:=MediaPlayer1.position
    end;
    Так воот Проблемма заключается в искаверкивании музыки в таймере , она происходит потому что ползунок двигается и обробатывается Trackbar1.change ....
  • Ламерёнок (04.06.08 15:29) [1]
    Блин ... недописал , Как сделать так чтобы в TrackBar ползунок двигался таймером не коверкая при этом качество звука
  • Ламерёнок (04.06.08 16:02) [2]
    Кто-нибудь может помочь мне ? Если моя процедура перемотки фиговая , вы можете дать другую.... 100% рабочую
  • Сергей М. © (04.06.08 19:26) [3]

    > If (ExtractFileExt(ListBox1.items[Listbox1.ItemIndex])='.
    > mp3')or(ExtractFileExt(Lis tBox1.items[Listbox1.ItemIndex])='.
    > wav')or(ExtractFileExt(ListBox1.items[Listbox 1.ItemIndex])='.
    > wave')or(ExtractFileExt(ListBox1.items[Listbox1.ItemIndex])='.
    > Mp 3')or(ExtractFileExt(ListBox1.items[Listbox1.ItemIndex])='.
    > MP3')or(ExtractFileEx t(ListBox1.items[Listbox1.ItemIndex])='.
    > wmv')or(ExtractFileExt(ListBox1.items[Li stbox1.ItemIndex])='.
    > avi') then begin


    > Блин ... недописал


    Пиши исчо !
    Оч интересно читать.
  • ЮЮ © (05.06.08 09:57) [4]
    > procedure TForm6.Timer1Timer(Sender: TObject);//А воот эта фиговина мне и ненравится
    > begin
    > label2.Caption:=inttostr(MediaPlayer1.Position div 10);
     TrackBar1.OnChange := nil;
     try
    >   TrackBar1.position:=MediaPlayer1.position
     finally
       TrackBar1.OnChange := TrackChange;  
     end;
    > end;

 
Конференция "Media" » И вновь перемотка ...... (да она самая) [D7, WinXP]
Есть новые Нет новых   [133928   +471][b:0][p:0.001]