RAD Studio VCL Reference
ContentsIndex
PreviousUpNext
TMediaPlayer.EnabledButtons Property

Determines which buttons on the media player are usable.

Pascal
property EnabledButtons: TButtonSet;
C++
__property TButtonSet EnabledButtons;

EnabledButtons controls which buttons on the media player are enabled and usable. 

An enabled button is colored and usable. A disabled button is dimmed and not usable. If a button is not enabled with EnabledButtons, it is disabled. By default, all buttons are enabled. 

If the AutoEnable property is true, AutoEnable supersedes EnabledButtons. The buttons automatically enabled or disabled by the media player override any buttons enabled or disabled with the EnabledButtons property.  

C++ Examples: 

 

//
//This example demonstrates the use of TMediaPlayer component. Assuming 2 buttons
//for Open and Stop are present on the form.
//Note: AutoEnable must be set to false to be able to control
//the buttons manually.
//
void __fastcall TForm2::btOpenClick(TObject *Sender)
{
    TOpenDialog* OpenMediaDialog;

    OpenMediaDialog = new TOpenDialog(this);
    OpenMediaDialog->Filter = "All Video Files (*.avi)|*.avi";
  // There are avi files in
  // C:\Documents and Settings\All Users\Documents\RAD Studio\6.0\Demos\DelphiWin32\VCLWin32\CoolStuff
    if (OpenMediaDialog->Execute())
    {
        /* Assign a file to the media player */
        MediaPlayer1->FileName = OpenMediaDialog->FileName;

        /* Check if the file exists and is not a directory */
        if ((FileExists(OpenMediaDialog->FileName)) &&
           (!DirectoryExists(OpenMediaDialog->FileName)))
        {
            /* Open the files */
            MediaPlayer1->Wait = true;
            MediaPlayer1->Open();
            MediaPlayer1->Play();

            /* Override automatic button controlling */
            MediaPlayer1->EnabledButtons =
                TButtonSet() <<
                TMPBtnType::btPause <<
                TMPBtnType::btStop <<
                TMPBtnType::btPlay;


            /* Enable  the stop button */
            btStop->Enabled = true;
            btOpen->Enabled = false;
        }
    }

    delete OpenMediaDialog;
}

void __fastcall TForm2::btStopClick(TObject *Sender)
{
    /* Stop and close the media */
    MediaPlayer1->Stop();
    MediaPlayer1->Close();

    MediaPlayer1->EnabledButtons = TButtonSet();

    /* Enable open button again */
    btOpen->Enabled = true;
}

void __fastcall TForm2::FormCreate(TObject *Sender)
{
    /* Disable all buttons */
    MediaPlayer1->AutoEnable = false;
    MediaPlayer1->EnabledButtons = TButtonSet();
}

void __fastcall TForm2::MediaPlayer1PostClick(TObject *Sender,
          TMPBtnType Button)
{
    if (Button == TMPBtnType::btStop)
        btStop->Click();
}

 

Delphi Examples: 

{
This example demonstrates the use of TMediaPlayer component. Assuming 2 buttons
for Open and Stop are present on the form.
Note: AutoEnable must be set to false to be able to control
the buttons manually.
}

procedure TForm2.btOpenClick(Sender: TObject);
var
  OpenMediaDialog : TOpenDialog;
begin
  OpenMediaDialog := TOpenDialog.Create(Self);
  OpenMediaDialog.Filter := 'All Video Files (*.avi)|*.avi';
  // There are avi files in
  // C:\Documents and Settings\All Users\Documents\RAD Studio\6.0\Demos\DelphiWin32\VCLWin32\CoolStuff
  if OpenMediaDialog.Execute() then
  begin
    { Assign a file to the media player }
    MediaPlayer1.FileName := OpenMediaDialog.FileName;

    { Check if the file exists and is not a directory }
    if (FileExists(OpenMediaDialog.FileName)) and
       (not DirectoryExists(OpenMediaDialog.FileName)) then
    begin
      { Open the files }
      MediaPlayer1.Wait := true;
      MediaPlayer1.Open;
      MediaPlayer1.Play;

      { Override automatic button controlling }
      MediaPlayer1.EnabledButtons :=
        [TMPBtnType.btPause, TMPBtnType.btStop, TMPBtnType.btPlay];

      { Enable  the stop button }
      btStop.Enabled := true;
      btOpen.Enabled := false;
    end;
  end;

  OpenMediaDialog.Free;
end;

procedure TForm2.btStopClick(Sender: TObject);
begin
  { Stop and close the media }
  MediaPlayer1.Stop;
  MediaPlayer1.Close;

  MediaPlayer1.EnabledButtons := [];

  { Enable open button again }
  btOpen.Enabled := true;
end;

procedure TForm2.FormCreate(Sender: TObject);
begin
  { Disable all buttons }
  MediaPlayer1.AutoEnable := false;
  MediaPlayer1.EnabledButtons := [];
end;

procedure TForm2.MediaPlayer1PostClick(Sender: TObject;
  Button: TMPBtnType);
begin
  if Button = TMPBtnType.btStop then
     btStop.Click;
end;

 

Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
What do you think about this topic? Send feedback!