播放器的進度條 |
尚未結案
|
蔚空_1
一般會員 發表:6 回覆:0 積分:1 註冊:2005-10-13 發送簡訊給我 |
想用 MediaPlayer 做個播放器, 但delphi提供的進度條不美, 他提供的有trackbar等...想用圖片自己做一個,好像winamp那樣。
我自己做的,但不理想...”有小數點差異”
引言: var fre, MovLen : Real; procedure TForm1.Button1Click(Sender: TObject); begin Player.TimeFormat := tfMilliseconds; Player.FileName := 'test.mp3'; Player.Open; Timer1.Enabled := true; Player.Play; end; //Player = MediaPlayer1 procedure TForm1.Timer1Timer(Sender: TObject); begin fre := Player.Length / 1000;//頻率 MovLen := Bar.Width / fre ;//每次移動 Move.Left := Move.Left + Round(MovLen); if (Player.Position = Player.Length) then//當播完就停止 Begin Timer1.Enabled := false; Move.Left := Bar.Left; End; end;以上方法問題出在Move.Left,由於Left不支持Float,那麼每次移動都有小數點的差異,如果歌曲好長,差異就好大了. |
StrongLemon
高階會員 發表:10 回覆:166 積分:105 註冊:2004-04-18 發送簡訊給我 |
|
japhenchen
高階會員 發表:51 回覆:444 積分:184 註冊:2003-07-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |