Home
Facebook
Twitter
Google+
RSS Feeds
Sebatas Catatan
≡
Navigation
Home
Tentang Blog
Daftar Isi
Home
»
Delphi
»
Open Source
»
Pemrograman
»
Tips n Tricks
»
Mengatur Volume TMediaplayer Delphi
Mengatur Volume TMediaplayer Delphi
Posted by
Ghozali Muslim
Mengatur volume pada komponen TMediaPlayer bawaan delphi
unit Unit1;<br /><br />interface<br /><br />uses<br /> Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,<br /> Dialogs, StdCtrls, ComCtrls, MPlayer, MMSystem;<br /><br />//--- tambah constanta disini untuk mengatur volume<br />const<br />// ---- buat loading volume ----<br /> MCI_SETAUDIO = $0873;<br /> MCI_DGV_SETAUDIO_VOLUME = $4002;<br /> MCI_DGV_SETAUDIO_ITEM = $00800000;<br /> MCI_DGV_SETAUDIO_VALUE = $01000000;<br /> MCI_DGV_STATUS_VOLUME = $4019; <br /><br />type<br /> TForm1 = class(TForm)<br /> Button1: TButton;<br /> TrackBar1: TTrackBar;<br /> Label1: TLabel;<br /> MediaPlayer1: TMediaPlayer;<br /> OpenDialog1: TOpenDialog;<br /> StatusBar1: TStatusBar;<br /> procedure FormCreate(Sender: TObject);<br /> procedure TrackBar1Change(Sender: TObject);<br /> procedure Button1Click(Sender: TObject);<br /> private<br /> { Private declarations }<br /> public<br /> { Public declarations }<br /> end;<br /><br />var<br /> Form1: TForm1;<br /><br />implementation<br /><br />{$R *.dfm}<br /><br />// tambahkan " type " untuk atur volume<br />type<br /> MCI_DGV_SETAUDIO_PARMS = record // volume<br /> dwCallback: DWORD;<br /> dwItem: DWORD;<br /> dwValue: DWORD;<br /> dwOver: DWORD;<br /> lpstrAlgorithm: PChar;<br /> lpstrQuality: PChar;<br /> end;<br /><br />// tambahkan " type " untuk atur volume<br />type<br /> MCI_STATUS_PARMS = record // volume<br /> dwCallback: DWORD;<br /> dwReturn: DWORD;<br /> dwItem: DWORD;<br /> dwTrack: DWORD;<br /> end;<br /><br /><br />// prosedur set volume<br />procedure MPSetVolume(MP:TMediaPlayer;Volume:Integer) ;<br />var<br /> p: MCI_DGV_SETAUDIO_PARMS;<br />begin<br /> p.dwCallback := 0;<br /> p.dwItem := MCI_DGV_SETAUDIO_VOLUME;<br /> p.dwValue := Volume;<br /> p.dwOver := 0;<br /> p.lpstrAlgorithm := nil;<br /> p.lpstrQuality := nil;<br /> mciSendCommand(MP.DeviceID, MCI_SETAUDIO, MCI_DGV_SETAUDIO_VALUE<br /> or MCI_DGV_SETAUDIO_ITEM, Cardinal(@p)) ;<br />end;<br /><br />// dapatkan Volume, range 0 - 1000<br />function MPGetVolume(MP: TMediaPlayer): Integer;<br />var<br /> p: MCI_STATUS_PARMS;<br />begin<br /> p.dwCallback := 0;<br /> p.dwItem := MCI_DGV_STATUS_VOLUME;<br /> mciSendCommand(MP.DeviceID, MCI_STATUS, MCI_STATUS_ITEM, Cardinal(@p)) ;<br /> Result := p.dwReturn;<br />end;<br /><br /><br />procedure TForm1.FormCreate(Sender: TObject);<br />begin<br /> Label1.Caption :='0%';<br /> TrackBar1.Position:=400;<br /> MPGetVolume(MediaPlayer1);<br />end;<br /><br />procedure TForm1.TrackBar1Change(Sender: TObject);<br />var<br />i:real;<br />begin<br /> i:=int(TrackBar1.Position/TrackBar1.Max*100);<br /> Label1.Caption:=floattostr(i)+'%';<br /><br /> MPSetVolume(MediaPlayer1,TrackBar1.Position);<br />end;<br /><br />procedure TForm1.Button1Click(Sender: TObject);<br />begin<br /> if OpenDialog1.Execute then<br /> begin<br /> StatusBar1.SimpleText:=OpenDialog1.FileName;<br /> MediaPlayer1.Close;<br /> MediaPlayer1.FileName:=OpenDialog1.FileName;<br /> MediaPlayer1.Open;<br /> end;<br />end;<br /><br />end.
Hasil Screenshot :
Download Source Code
DISINI
Tweet
Related Posts:
Menghitung Umur Delphi
Instal Komponen Zeos pada Lazarus Windows
Regular Expression (RegEx) dengan Delphi
Message Dialog Bahasa Indonesia Delphi
Contoh Sederhana Trigger dan Stored Procedure pada Interbase / Firebird
Koneksi Database Interbase / Firebird dengan Delphi 7
Please FOLLOW and JOIN to get update!
Cool Social Media Sharing Touch Me Widget by
Blogger Widgets
Blog,
Updated at:
9:35 AM
0 comments:
Post a Comment
Newer Post
Older Post
Home
Popular Posts
Menampilkan Bilangan Genap Ganjil dan Prima dengan Delphi
Konversi Text ke ASCII, HEXA, BINER, OCTAL
Menggunakan Fast Report Secara Runtime
Koneksi Database Interbase / Firebird dengan Delphi 7
Membuat Tabel Pada Interbase / Firebird via IBExpert
Categories
Database
Delphi
Firebird
IBExpert
Interbase
Jaringan
Lazarus
MySQL
Network
Open Source
Pemrograman
RDBMS
Tips n Tricks
Archives
►
2014
(4)
►
June
(1)
►
March
(1)
►
February
(1)
►
January
(1)
▼
2013
(32)
►
December
(1)
►
November
(1)
►
October
(1)
►
September
(2)
▼
August
(2)
Mengatur Volume TMediaplayer Delphi
Menghitung Umur Delphi
►
July
(5)
►
June
(2)
►
May
(2)
►
April
(4)
►
March
(8)
►
February
(1)
►
January
(3)
►
2012
(11)
►
December
(11)
0 comments:
Post a Comment