Hola disculpa lo burdo del ejemplo, lo hice super rapido para ponerlo aca... espero te sirva, use:
TMediaPlayer (Media)
TProgressBar(Bar)
TTimer(Timer1)
TOpenDialog (Open)
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(Open->Execute())
{
Media->FileName = Open->FileName;
Media->Open();
Media->Display = Form1;
Media->Play();
Timer1->Enabled=true;
Bar->Min = 0;
Bar->Max = Media->Length;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
Bar->Position = Media->Position;
}
//---------------------------------------------------------------------------
Ahi tienes que ver el evento OnNotify del MediaPlayer para saber cuando se detiene la reproduccion del archivo, asi puedes volver a cero la posicion del ProgressBar..
Para el volumen te adjunto un componente que hace le trabajo por ti.
Saludos!