www.pudn.com > vod2007.rar > Unit_BFLBForm.cpp
//--------------------------------------------------------------------------- #include#pragma hdrstop #include "Unit_BFLBForm.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TfrmBFLB *frmBFLB; extern AnsiString strGM; extern int iForms; //--------------------------------------------------------------------------- __fastcall TfrmBFLB::TfrmBFLB(TComponent* Owner) : TForm(Owner) { lstGD->Clear(); status = 1; //原唱 Muted = false; } //--------------------------------------------------------------------------- void TfrmBFLB::InitPages(int value) { if(vecTemp.size() > value) edtPages->Text = "第" + IntToStr(curPages) + "页/共" + IntToStr(Pages) + "页"; else if(vecTemp.size() > 0) edtPages->Text = "第1页/共1页"; else if(vecTemp.size() == 0) edtPages->Text = "第0页/共0页"; } void TfrmBFLB::InitList(int begin, int last) { lstGD->Clear(); while(begin != last) { lstGD->Items->Add(vecTemp[begin++]); } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgPageDownMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgPageDown->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\左排\\下页.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgPageDownMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgPageDown->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\左排\\下页-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgDeleteMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgDelete->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\删除-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgDeleteMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgDelete->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\删除.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgRepeatMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgRepeat->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\重播-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgRepeatMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgRepeat->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\重播.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgAVolMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgAVol->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\增音量-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgAVolMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgAVol->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\增音量.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgDVolMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgDVol->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\减音量.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgDVolMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgDVol->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\减音量-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgNextMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgNext->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\下一首-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgNextMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgNext->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\下一首.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgStreamMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgStream->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\原伴唱-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgStreamMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgStream->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\原伴唱.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgPageUpMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgPageUp->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\左排\\上页-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgPageUpMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgPageUp->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\左排\\上页.jpg"); } void __fastcall TfrmBFLB::imgEnterMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgEnter->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\左排\\确定-1.jpg"); } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgEnterMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { imgEnter->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\左排\\确定.jpg"); } void __fastcall TfrmBFLB::lblHomeClick(TObject *Sender) { this->Visible = false; frmHome->Visible = true; } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::lblBackClick(TObject *Sender) { switch(iForms) { case 0: this->Visible = false; frmHome->Visible = true; break; case 1: this->Visible = false; frmPYXZ->Visible = true; break; case 2: Dm->adoGDXZ->First(); //将歌单选择画面纪录移动到头部 this->Visible = false; frmGDXZ->Visible = true; break; case 3: this->Visible = false; frmPYXZ->Visible = true; } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::FormActivate(TObject *Sender) { if(!strGM.IsEmpty()) { curPages = 1; vecTemp.push_back(strGM.c_str()); Count = vecTemp.size(); if( Count > 13) { if((Others = Count % 13) == 0) { Pages = Count / 13; }else{ Pages = Count / 13 + 1; } InitList(0, 13); }else{ lstGD->Items->Add(strGM); } InitPages(13); strGM = ""; } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgDeleteClick(TObject *Sender) { if(lstGD->Items->Count > 0) { lstGD->Items->Delete(lstGD->ItemIndex); } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgPageDownClick(TObject *Sender) { if(Count > 13 && curPages + 1 < Pages) { curPages++; InitPages(13); InitList(13, 13 * 2); }else if( Count > 13 && curPages + 1 == Pages){ curPages++; InitPages(13); InitList(Count - Others, Count); } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgPageUpClick(TObject *Sender) { if(Count > 13 && curPages > 1) { curPages--; InitPages(13); if(curPages == Pages) { InitList(Count - 13 - Others, Count - Others); } else InitList((curPages - 1) * 13, curPages * 13); } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::RePlay(TObject *Sender) { if(frmHome->mplayer->TMPGetStatusMode() != MCI_MODE_PLAY) { if(lstGD->Items->Count > 0) { AnsiString songname = lstGD->Items->Strings[0]; Dm->adoBFLB->Close(); Dm->adoBFLB->SQL->Clear(); Dm->adoBFLB->SQL->Add("select 路径1, wjm, bc, yc from song where gm = '" + songname + "'"); Dm->adoBFLB->Open(); AnsiString path = Dm->adoBFLB->Fields->Fields[0]->AsString; AnsiString file = Dm->adoBFLB->Fields->Fields[1]->AsString; bc = Dm->adoBFLB->Fields->Fields[2]->AsString; yc = Dm->adoBFLB->Fields->Fields[3]->AsString; //frmHome->mplayer->TMPOpen("\\\\Larry\\c\\陈升\\北京一夜.mpg"); TrackBar1->Position = 2500; if (FileExists(path + file)) { frmHome->mplayer->TMPOpen(path + file); frmHome->mplayer->TMPSetAudioVolume(2500); //Panel1->Top = -100; //Panel1->Left = -100; //mplayer->TMPSetDisplay(Panel1->Handle); PlayMode(yc); frmHome->mplayer->TMPPlay(); }else MessageBox(frmBFLB->Handle, "指定的文件不存在", "错误", MB_OK); } } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::Pause(TObject *Sender) { if(frmHome->mplayer->TMPGetStatusMode() == MCI_MODE_PLAY) { imgPause->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\播放.jpg"); frmHome->mplayer->TMPause(); } else { imgPause->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\暂停.jpg"); frmHome->mplayer->TMPPlay(); } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::Next(TObject *Sender) { if(vecTemp.size() == 1) { lstGD->Clear(); RePlay(NULL); }else{ for( int i = 0; i < vecTemp.size() - 1; ++i ) { vecTemp[i] = vecTemp[i + 1]; } vecTemp.pop_back(); InitPages(13); if(vecTemp.size() > 13) InitList(0, 13); else InitList(0, vecTemp.size()); if(frmHome->mplayer->TMPGetStatusMode() == MCI_MODE_PLAY) Pause(NULL); RePlay(NULL); } } //--------------------------------------------------------------------------- void TfrmBFLB::PlayMode(AnsiString mode) { if(mode == "左") { frmHome->mplayer->TMPSetAudioSourceLeft(); }else if(mode == "右"){ frmHome->mplayer->TMPSetAudioSourceRight(); }else if(mode == "1"){ frmHome->mplayer->TMPSetAudioOff(); frmHome->mplayer->TMPSetStream(0); frmHome->mplayer->TMPSetAudioOn(); }else if(mode == "2"){ frmHome->mplayer->TMPSetAudioOff(); frmHome->mplayer->TMPSetStream(1); frmHome->mplayer->TMPSetAudioOn(); }else if(mode == "3"){ frmHome->mplayer->TMPSetAudioOff(); frmHome->mplayer->TMPSetStream(2); frmHome->mplayer->TMPSetAudioOn(); } } void __fastcall TfrmBFLB::imgStreamClick(TObject *Sender) { switch(status) { case 0: //伴唱 PlayMode(bc); status = 1; break; case 1: //原唱 PlayMode(yc); status = 0; } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::DVol(TObject *Sender) { //减音量 if(frmHome->mplayer->TMPGetStatusMode() == MCI_MODE_PLAY) { TrackBar1->Position -= TrackBar1->Frequency; frmHome->mplayer->TMPSetAudioVolume(TrackBar1->Position); } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::AVol(TObject *Sender) { //加音量 if(frmHome->mplayer->TMPGetStatusMode() == MCI_MODE_PLAY) { TrackBar1->Position += TrackBar1->Frequency; frmHome->mplayer->TMPSetAudioVolume(TrackBar1->Position); } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::Mute(TObject *Sender) { //静音 if(frmHome->mplayer->TMPGetStatusMode() == MCI_MODE_PLAY) { if(Muted) { Muted = false; frmHome->mplayer->TMPSetAudioOn(); imgMute->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\静音.jpg"); }else{ Muted = true; frmHome->mplayer->TMPSetAudioOff(); imgMute->Picture->LoadFromFile(".\\bmp\\紫红\\简体\\右排\\静音-1.jpg"); } } } //--------------------------------------------------------------------------- void __fastcall TfrmBFLB::imgRepeatClick(TObject *Sender) { RePlay(NULL); } //---------------------------------------------------------------------------