Senin, 18 Juni 2012

TUGAS

MEDIA PLAYER

listing membuat media player dengan playlist

setelah lama saya mengutak-atik project, googling kesana kemari, akhirnya jadi juga nih projec. Biar di bantu teman juga untuk pengerjaannya
berikut ini adalah listing yang saya mau share kepada pemirsa sekalian

player music dengan playlist

komponen yang saya gunakan adalah :
   "mp: TMediaPlayer;
    Timer1: TTimer;
    pb: TProgressBar;
    od: TOpenDialog;
    Panel1: TPanel;
    bo: TButton;
    bt: TButton;
    GroupBox1: TGroupBox;
    tf: TTimer;
    Panel2: TPanel;
    info: TLabel;
    Label1: TLabel;
    Label2: TLabel;
    SpinEdit1: TSpinEdit;
    SpinEdit2: TSpinEdit;
    Button1: TButton;
    Button2: TButton;
    lb: TListBox;
    GroupBox2: TGroupBox;
    tgl: TLabel;
    jam: TLabel;
    tjam: TTimer;
    Button3: TButton;"

 dan ini adalah listing:
"implementation
uses Math;
{$R *.dfm}

procedure TForm1.boClick(Sender: TObject);
begin
mp.Display:=panel1;
if od.Execute then
begin
lb.Items.Add(od.FileName);
 info.Caption:=od.FileName;
 mp.FileName:=od.FileName;
 mp.Open;
 if lb.ItemIndex > 1 then
 pb.Position:=mp.Position;
 pb.Max:=mp.Length;
 mp.Enabled:=true;
 timer1.Enabled:=true;
 end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
pb.Position:=mp.Position;
end;


procedure TForm1.lbClick(Sender: TObject);
var A:integer;
begin
A:=lb.ItemIndex;

     If lb.Selected[A] Then
        Begin
          info.Caption:=lb.Items.Strings[A];
        End;
end;

procedure TForm1.lbDblClick(Sender: TObject);
Var A:Integer;
begin
A:=lb.ItemIndex;

     If lb.Selected[A] Then
        Begin
          info.Caption:=lb.Items.Strings[A];
          Mp.FileName:=info.Caption;
          Mp.Open;
          Mp.Play;
        End;
end;

procedure TForm1.tjamTimer(Sender: TObject);
begin
jam.Caption:=timetostr(time)
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
tgl.Caption:=formatdatetime('dd-mm-yyyy',date());
end;

function GetWaveVolume(var LVol:DWORD; var RVol:DWORD):Boolean;
var
WaveOutCaps:TWAVEOUTCAPS;
Volume:DWORD;
begin
result:=false;
if WaveOutGetDevCaps(WAVE_MAPPER,@ WaveOutCaps, sizeof(WaveOutCaps))=MMSYSERR_NOERROR then
if WaveOutCaps.dwFormats and WAVECAPS_VOLUME=WAVECAPS_VOLUME then
begin
result:=WaveOutGetVolume(WAVE_MAPPER, @ Volume)=MMSYSERR_NOERROR;
LVol:=LoWord(Volume);
RVol:=HiWord(Volume);
end;
end;

function SetWaveVolume (const AVolume:DWORD):boolean;
var
WaveOutCaps:TWAVEOUTCAPS;
begin
result:=false;
if WaveOutGetDevCaps(WAVE_MAPPER,@ WaveOutCaps, sizeof(WaveOutCaps))=MMSYSERR_NOERROR then
if WaveOutCaps.dwFormats and WAVECAPS_VOLUME=WAVECAPS_VOLUME then
result:=WaveOutSetVolume(WAVE_MAPPER, AVolume)=MMSYSERR_NOERROR;
end;


procedure TForm1.Button1Click(Sender: TObject);
var
LVol:Word;
RVol:Word;
begin
LVol:=spinedit1.Value;
RVol:=spinedit2.Value;
SetWaveVolume(MakeLong(LVol, RVol));
end;

procedure TForm1.Button2Click(Sender: TObject);
var
LVol:DWORD;
RVol:DWORD;
begin
if GetWaveVolume(LVol, RVol)then
begin
spinedit1.Value:=LVol;
spinedit2.Value:=RVol;
end;
end;

procedure TForm1.btClick(Sender: TObject);
begin
close;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
lb.Clear;
end;

end."

di project ini juga bisa buka video juga kok, kalo soal ekstensi kita bisa mengaturnya. tapi disini belom saya atur ekstensinya.
ini screenshoot dari videonya


mungkin di listing ini belom sempurna tapi ilmu yang saya punya cuma segitu aja dan mau googling di yahoo juga males karena gk setiap saat terkoneksi dengan internet.

jika anda bingung dengan penjelasan yang saya berikan, anda bisa mendownloadnya kok.
klik disini jika mau mendownload project saya.

cukup sekian ilmu yang saya share pada hari ini, semoga ilmu yang saya share berguna da bermanfaat bagi orang lain.

Tidak ada komentar:

Posting Komentar