Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторна робота 9.doc
Скачиваний:
1
Добавлен:
30.11.2018
Размер:
134.14 Кб
Скачать

6. Запрограмувати подію OnCreate для форми

void __fastcall TForml::FormCreate(TObject *Sender)

{ Buttonl->Caption = PLAY;

Button2->Caption = PREVIOUS;

Button3->Caption = NEXT;

MediaPlayer->Notify = true; // дозволити подію Notify }

7. Запрограмувати подію Notify для зміни стану плеєра

void __fastcall.TForml::MediaPlayerNotifу(TObject *Sender)

{

switch ( MediaPlayer->Mode)

{case mpOpen: // користувач відкрив дисковод (

Buttonl->Enabled = false;

Button1->Caption = PLAY;

Button1->Tag = 0;

Button2->Enabled = false;

Button3->Enabled = false;

Label2->Caption = "00:00";

//по сигналу від таймера будемо перевіряти стан дисковода

Timer->Enabled = True; }

}

MediaPlayer->Notify = true;

}

8. Запрограмувати натиснення на кнопку Play/Stop

void _fastcall TForml::ButtonlClick(TObject *Sender)

{ if ( Buttonl-XTag = 0) {

MediaPlayer->Play();

Buttonl->Caption = STOP;

Buttonl->Hint = "Стоп";

Buttonl->Tag = 1;

Button3->Enabled = true;

MediaPlayer->Notify = true;

Timer->Enabled = true;

Tracklnfо();

} else {

Buttonl->Caption = PLAY;

Buttonl->Hint = "Відтворення";

Buttonl->Tag = 0;

MediaPlayer->Notify = true;

MediaPlayer->Stop();

Timer->Enabled = false; } }

9. Запрограмувати виведення в полі Label1 інформацію про поточний трек

void __fastcall TForml::TrackInfo()

{ int ms;

AnsiString st;

Track = MCI_TMSF_TRACK(MediaPlayer->Position);

MediaPlayer->TimeFormat = tfMilliseconds;

ms = MediaPlayer-XTrackLength[Track];

MediaPlayer->TimeFormat = tfTMSF;

st = "Трек "+ IntToStr(Track);

st = st + ". Длительность "+ IntToStr(MINUTE(ms));

st = st + ":" + IntToStr(SECOND(ms));

Label1->Caption = st; }

10. Запрограмувати кнопку «Наступний трек»

void__fastcall TForml::Button3Click(TObject *Sender)

{ MediaPlayer->Next();

// якщо перейшли до останнього треку, то кнопку Next зробити недоступною

if ( MCI_TMSF_TRACK(MediaPlayer->Position) == MediaPlayer->Tracks)

Button3->Enabled = false;

if (! Button2->Enabled) Button2->Enabled = true;

Tracklnfо();

Label2->Caption = "0:00";

}

11. Запрограмувати кнопку «Попередній трек»

void__fastcall TForml::Button2Click(TObject *Sender)

{

MediaPlayer->Previous(); // на початок поточного треку

MediaPlayer->Previous(); // на початок попереднього треку

if ( MCI_TMSF_TRACK(MediaPlayer->Position) == 1)

Button2->Enabled = false;

if ( ! Button3->Enabled) Button3->Enabled = true;

Tracklnfо();

Label2->Caption = "0:00"; }

12. Запрограмувати закриття прогрми та зупинки плеєра

void __fastcall TForml::FormClose(TObject *Sender, TCloseAction SAction)

{ MediaPlayer->Stop();

MediaPlayer->Close(); }

13. Розглянути вигляд вікна програми після її запуску ( рис. 3).

Рис. 3. Вигляд вікна під час виконання програми

14. Запустити програму на виконання, протестувати її та продемонструвати результат викладачу.

Контрольні запитання

        1. Яка властивість компоненту MediaPlayer задає тип пристрою?

        2. Яка ознака відповідає за автоматичне завантаження після запуску програми файлу відеоролика або звукового фрагмента?

        3. Яка властивість компоненту MediaPlayer дозволяє зробити невидимими деякі кнопки?

        4. Які властивості компоненту MediaPlayer доступні під час роботи програми?

        5. Для чого використовується властивість Display компоненти MediaPlayer?