⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.cpp

📁 <<C++Builder 6实用编程100例>>随书光盘
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#include <mmsystem.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
        MediaPlayer1->Open();
        MCI_STATUS_PARMS Status;
        Status.dwItem = MCI_STATUS_MEDIA_PRESENT;
        mciSendCommand(MediaPlayer1->DeviceID,MCI_STATUS,
                MCI_STATUS_ITEM|MCI_WAIT,(DWORD) (LPMCI_STATUS_PARMS) &Status);
        if (!Status.dwReturn)
        {
                MessageDlg("驱动器中没有CD.",mtWarning,TMsgDlgButtons()<<mbYes,0);
                MediaPlayer1->Close();
        }
        else
        {
                for(int count=1;count <= MediaPlayer1->Tracks;count++)
                {
                        ComboBox1->Items->Add("曲目"+IntToStr(count));
                        ComboBox1->ItemIndex=0;
                }
                Button1->Enabled=false;
                Timer1->Enabled=true;
        }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
        tracks=MCI_TMSF_TRACK(MediaPlayer1->Position);
        minutes=MCI_TMSF_MINUTE(MediaPlayer1->Position);
        seconds=MCI_TMSF_SECOND(MediaPlayer1->Position);
        frame=MCI_TMSF_FRAME(MediaPlayer1->Position);
        String track=(tracks>9)?IntToStr(tracks): "0"+IntToStr(tracks);
        String minute=(minutes>9)?IntToStr(minutes): "0"+IntToStr(minutes);
        String second=(seconds>9)?IntToStr(seconds): "0"+IntToStr(seconds);
        Label2->Caption="["+track+"]"+"<"+minute+":"+second+">";
        if(ComboBox1->ItemIndex!=tracks-1)
                ComboBox1->ItemIndex=tracks-1;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
        if(MediaPlayer1->Mode==mpPlaying)
        {
                tracks=MCI_TMSF_TRACK(MediaPlayer1->Position);
                if(ComboBox1->ItemIndex!=tracks-1)
                {
                        MediaPlayer1->Stop();
                        tracks=ComboBox1->ItemIndex+1;
                        minutes=0;
                        seconds=0;
                        frame=0;
                        MediaPlayer1->Position=MCI_MAKE_TMSF(tracks,minutes,seconds,frame);
                }
                MediaPlayer1->Play();
        }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)
{
        if(MediaPlayer1->Mode==mpPlaying)
        {
                MediaPlayer1->Stop();
                MediaPlayer1->Close();
        }
        Form1->Close();
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

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