| "媒体播放表(*.asx;*.wax;*.m3u;*.wvx)|*.asx;*.wax;*.m3u;*.wvx|" +
"电影文件(*.mpeg;*.mpg;*.m1v;*.mp3)|*.mpeg;*.mpg;*.m1v;*.mp3|" + "视频文件(*.avi;*.wmv)|*.avi;*.wmv)|" + "音频文件(*.wav;*.snd;*.au;*.aif;*.aifc)|*.wav;*.snd;*.au;*.aif;*.aifc|" + "所有文件(*.*)|*.*|"; CFileDialog music(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_ALLOWMULTISELECT,filter); if(music.DoModal() == IDOK) { POSITION pos = music.GetStartPosition(); while (pos != NULL) { CString str = music.GetNextPathName(pos); m_MusicAry.Add(str); int index = str.ReverseFind('\\'); if(index == -1) m_MusicList.AddString(str); else { CString name = str.Mid(index + 1); m_MusicList.AddString(name); } } } } |
void CMp3PlayerDlg::Play(int index)//播放函数,index为曲目的序号 { m_Music.Close(); m_MusicList.SetCurSel(index); |
| CString sPath = m_MusicAry.GetAt(index);
m_Music.Open(sPath); m_Status.SetWindowText(sPath + _T(" 正在播放..."));//在状态条中显示提示信息 m_nLength = m_Music.GetLength();//获取音乐长度 m_nPos = 0; m_nTime = m_nLength/1000;//除以1000即为播放时间 // m_sMusicLen.Format("%d分%d秒",m_nTime/60,m_nTime%60);//显示播放时间 m_sMusicPos.Format("%d分%d秒",m_nPos/60,m_nPos%60);//显示当前播放位置 // UpdateData(false); m_MPBar.SetScrollRange(0,m_nTime);//设置音乐播放的进度条范围 // m_Volume.SetRange(0,1000);//设置音量调节范围 m_Volume.SetPos(m_nVolume); // m_Music.Play(this->m_hWnd);//开始播放 SetTimer(2,1000,NULL);//启动2号定时器 } |








