Hola sbraceras.
Cita:
No puedo usar ese componente sin asociarle una ventana 'padre'?
|
No, pero podes enviar el parent como parámetro a la unidad. Por si te sirve de guía, te pongo un código de ejemplo (muy básico) de como podrías hacer:
Código Delphi
[-]
unit Unit2;
interface
uses Controls, MPlayer;
type
TClase = class(TObject)
private
...
procedure PlayMediaNotify(Sender: TObject);
public
...
procedure PlayMedia(aWCtrl: TWinControl; const aFileName: string);
...
end;
var
MClase: TClase;
implementation
...
procedure TClase.PlayMediaNotify(Sender: TObject);
begin
with TMediaPlayer(Sender) do
if NotifyValue in [nvSuccessful,nvFailure] then
Free;
end;
procedure TClase.PlayMedia(aWCtrl: TWinControl; const aFileName: string);
begin
with TMediaPlayer.Create(nil) do
begin
Parent:= aWCtrl;
Close;
OnNotify:= PlayMediaNotify;
FileName:= aFileName;
Open;
Play;
end;
end;
...
end.
Llamada:
Código Delphi
[-]
uses Unit2;
...
procedure TForm1.Button1Click(Sender: TObject);
...
begin
...
MClase.PlayMedia(Form1,'C:\Users\Usuario\Music\Prueba.mp3');
end;
Saludos.