player.cpp

来自「《C++ Builder 5技术内幕》一书附带的程序源代码」· C++ 代码 · 共 76 行

CPP
76
字号
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "Player.h"
#include "About.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TFormMain *FormMain;
//---------------------------------------------------------------------------
__fastcall TFormMain::TFormMain(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::MenuItemFileLoadClick(TObject *Sender)
{
  if( OpenDialog->Execute() )
  {
    MediaPlayer->FileName = OpenDialog->FileName;
    MediaPlayer->Open();
  }
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::MenuItemFileExitClick(TObject *Sender)
{
  Application->Terminate();
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::MenuItemFilePlayClick(TObject *Sender)
{
  if( ( MediaPlayer->DeviceType != dtWaveAudio ) ||
      ( MediaPlayer->DeviceType != dtSequencer ) ||
      ( MediaPlayer->DeviceType != dtCDAudio ) )
  {
    ImageBackground->Visible = false;
  }
  try
  {
    MediaPlayer->Play();
  }
  catch( EMCIDeviceError &E )
  {
    AnsiString S( "\rUse the File | Open menu item to select an AVI file." );
    ShowMessage( "Bummer: " + E.Message + ". " + S );
  }
}
//---------------------------------------------------------------------------
void __fastcall TFormMain::MenuItemOptionsChangeBackgroundClick(
      TObject *Sender)
{
  AnsiString szRootDir( ParamStr(0) );
  AnsiString szSaveDir = OpenDialog->InitialDir;
  AnsiString szSaveFilter = OpenDialog->Filter;
  OpenDialog->InitialDir = ::ExtractFilePath( szRootDir );
  OpenDialog->Filter = "Picture | *.bmp";
  if (OpenDialog->Execute())
  {
    ImageBackground->Picture->LoadFromFile( OpenDialog->FileName );
    ImageBackground->Stretch = true;
    ImageBackground->Visible = true;
  }
  OpenDialog->InitialDir = szSaveDir;
  OpenDialog->Filter = szSaveFilter;
}
//---------------------------------------------------------------------------

void __fastcall TFormMain::MenuItemAboutClick(TObject *Sender)
{
  TAboutBox *AboutBox = new TAboutBox( this );
  AboutBox->ShowModal();
  delete AboutBox;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?